2017-11-06 1 views
2

내가이 테이블이 : 고유 제약 조건 만 1 참 (1) 값

CREATE TABLE [tblExample](
    [ExampleID] [int] IDENTITY(1,1) NOT NULL, 
    [WordsAndStuff] [nvarchar](max) NOT NULL, 
    [Active] [bit] NOT NULL 

내가 활성 열이 하나의 레코드 만이 진실 할 수 있도록 고유 제한 조건을 갖고 싶어를 (1) . 이 시점에서 나는 항상 진실한 기록을 가질 필요가 없다. 단지 그들 중 하나 이상일 수는 없다.

어떻게 제한 조건을 작성합니까?

답변

4

테이블에 한 번에 active 개의 레코드가 하나만 있습니까? 필터와 함께 고유 색인을 사용할 수 있습니다.

create unique nonclustered index uixf_tblExample_Active_filtered 
    on tblExample (Active) 
    include (ExampleId, WordsAndStuff) -- optional included columns 
    where Active=1 
관련 문제