Sql server 2005 唯一约束,不包括空值
可能重复:Sql server 2005 唯一约束,不包括空值,sql-server-2005,constraints,unique-key,Sql Server 2005,Constraints,Unique Key,可能重复: 我的表中有一列,其中所有值都必须是唯一的或空的 我尝试为该列的表添加一个唯一键,但这似乎意味着我只能有1个空值 如何设置约束以使所有值都是唯一的,除非它们为NULL?SQL Server 2008已筛选出允许此操作的索引,但它们在2005年不可用。在SQLServer2005中,可以创建具有定义的索引视图 CREATE VIEW dbo.Foo WITH SCHEMABINDING AS SELECT bar FROM dbo.baz WHERE bar IS NOT NULL
我的表中有一列,其中所有值都必须是唯一的或空的 我尝试为该列的表添加一个唯一键,但这似乎意味着我只能有1个空值
如何设置约束以使所有值都是唯一的,除非它们为NULL?SQL Server 2008已筛选出允许此操作的索引,但它们在2005年不可用。在SQLServer2005中,可以创建具有定义的索引视图
CREATE VIEW dbo.Foo
WITH SCHEMABINDING
AS
SELECT bar
FROM dbo.baz
WHERE bar IS NOT NULL
然后在此基础上创建一个唯一的聚集索引
CREATE UNIQUE CLUSTERED INDEX ix ON dbo.Foo(bar)