テーブル呼び出しテストがあり、4 つのフィールドがあります。レコードを一意にしたいテーブルに複合一意キーを作成しました。以前のバージョンのレコードを追跡し、すべての古いレコードを isdeleted=1 とマークしていますが、問題は、私の一意のキーでは、2 つ以上の isdeleted=1 を持つ同じレコードが許可されないことです。
Create table test (ApplicationID int,IsDeleted bit
CONSTRAINT test_uck UNIQUE (ApplicationID,IsDeleted)
)
go
insert into test values(1,0)
insert into test values(1,1)
insert into test values(1,1)