Nous avons une erreur lors de l'exécution du script suivant;
IF NOT EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES
WHERE TABLE_TYPE='BASE TABLE' AND TABLE_NAME='Table_Name')
BEGIN
CREATE TABLE Table_Name
(
Field_Name_1 binary(32) NOT NULL CONSTRAINT PK_Name_Goes_Here PRIMARY KEY NONCLUSTERED
, Field_Name_2 int NOT NULL
, Field_Name_3 datetime NOT NULL INDEX IX_Name_Goes_Here CLUSTERED
)
END
En particulier, c'est la création d'index cluster qui génère l'erreur suivante:
Msg 1018, niveau 15, état 1, ligne 15
Syntaxe incorrecte près de «INDEX». Si cela est prévu dans le cadre d'une indication de tableau, un mot clé A WITH et des parenthèses sont désormais requis. Consultez la documentation en ligne de SQL Server pour la syntaxe appropriée.
C'est étrange car cela fonctionne sur tous nos serveurs à l'exception d'un serveur QA particulier. Le correctif que nous avons mis en place consiste à créer l'index cluster en dehors de l'instruction de création de table, mais je serais intéressé si quelqu'un avait déjà rencontré ce problème auparavant?
la source