创建唯一索引时出错

时间:2014-11-27 23:53:49

标签: sql-server database sql-server-2005 unique-index

大家好日子。我试图创建一个忽略空值的唯一索引。 这是我尝试的四个代码:

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'.

有人可以帮我纠正这个吗?感谢..

P.S。

我是SQL服务器的新手,我被要求迁移我们的数据库..

1 个答案:

答案 0 :(得分:0)

我不相信SQL Server 2005上可用的过滤索引,它们是在SQL Server 2008中引入的。

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