我甚至不确定如何说出这个问题。以下是我要完成的内容的解释:
我需要在AccountId和isDefaultWebOrderingPayment列上添加一个约束,当IsDefault为false时允许多个AccountId和IsDefaultWebOrderingPayment,但不允许多个AccountId和IsDefault的组合为真。
答案 0 :(得分:3)
根据马丁史密斯的评论,创建一个独特的指数就可以了。
CREATE UNIQUE NONCLUSTERED INDEX uq_AccountId_IsDefaultWebOrderingPayment
ON PaymentOptions(AccountId, IsDefaultWebOrderingPayment)
WHERE AccountId IS NOT NULL AND IsDefaultWebOrderingPayment = 1
GO