Ошибка при создании уникального индекса

Всем добрый день. Я пытался создать уникальный индекс, который бы игнорировал нулевые значения. Вот четыре кода, которые я попробовал:

CREATE UNIQUE NONCLUSTERED INDEX [BidContractNumber_UNIQUE] ON [biddetails] (BidContractNumber) WHERE [biddetails].[BidContractNumber] IS NOT NULL;

CREATE UNIQUE NONCLUSTERED INDEX [BidContractNumber_UNIQUE] ON [biddetails] (BidContractNumber) WHERE NOT((BidContractNumber) IS NULL);

CREATE UNIQUE INDEX BidContractNumber_UNIQUE ON biddetails (BidContractNumber) WHERE [BidContractNumber] IS NOT NULL;

CREATE UNIQUE INDEX BidContractNumber_UNIQUE ON biddetails (BidContractNumber) WHERE [BidContractNumber] IS NOT NULL;

но я всегда получаю это сообщение:

Msg 156, Level 15, State 1, Line 2 Incorrect syntax near the keyword 'WHERE'.

Может ли кто-нибудь помочь мне исправить это? Спасибо..

PS

Я новичок в SQL-сервере, и меня попросили перенести нашу базу данных..

1 ответ

Решение

Я не верю, что отфильтрованные индексы, доступные на SQL Server 2005, были введены в SQL Server 2008.

( https://www.simple-talk.com/sql/performance/introduction-to-sql-server-filtered-indexes/)

Другие вопросы по тегам