我有以下表中的SQL Server應用自定義約束在SQL Server數據庫
Create Table Banners
(
BannerID int Identity(1,1),
BannerUrl nvarchar(500),
BannerIsDomestic bit,
BannerName nvarchar(50),
CreationDate datetime,
ModificationDate datetime,
Show_Status bit,
Remark nvarchar(500)
Constraint Banner_ID_PK Primary Key (BannerID)
)
在此我想申請一個定製的約束一樣,在同一時間只有兩排可以有Show_Status
是真實的。一個與BannerIsDomestic = true
和一個與BannerIsDomestic = false
。
對於所有具有BannerIsDomestic = true
的行,只能有一個Show_Status = True
,其他所有行必須爲false。
對於所有具有BannerIsDomestic = false
的行,只有一行可以有Show_Status = True
,其他所有行必須是假的。
我可以在SQL Server中執行此操作嗎?
除了觸發器,我不認爲有任何的方式來實現這一目標。 –