У нас есть ошибка при запуске следующего скрипта;
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
В частности, создание кластерного индекса приводит к следующей ошибке:
Сообщение 1018, уровень 15, состояние 1, строка 15
Неверный синтаксис рядом с «INDEX». Если это предназначено как часть табличной подсказки, теперь требуются ключевое слово WITH и скобки. См. SQL Server Books Online для правильного синтаксиса.
Это странно, так как работает на всех наших серверах, за исключением определенного сервера QA. Исправление, которое мы создали, заключается в создании кластеризованного индекса вне оператора создания таблицы, но мне было бы интересно, сталкивался ли кто-нибудь с этой проблемой раньше?