我有这张表:
CREATE TABLE [tblExample](
[ExampleID] [int] IDENTITY(1,1) NOT NULL,
[WordsAndStuff] [nvarchar](max) NOT NULL,
[Active] [bit] NOT NULL
我希望“事件”列具有唯一约束,该约束仅允许一条记录为真 (1)。在这一点上,我不需要一直有一个真实的记录,只是不能有多个。
如何编写约束?
最佳答案
表中一次只有一个事件
记录?您可以使用带有过滤器的唯一索引:
create unique nonclustered index uixf_tblExample_Active_filtered
on tblExample (Active)
include (ExampleId, WordsAndStuff) -- optional included columns
where Active=1
关于sql-server - 位列的唯一约束仅允许 1 个真 (1) 值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47141834/