2012-02-27 13 views
1

bitフィールドがテーブルにあり、更新時には、最初のフィールドが既に設定されている場合にのみ2番目のフィールドを(1)クエリは最初のフィールドが1でない場合、クエリは一度それらの両方を設定することで、これらのフィールドの両方を更新した場合、データベースは、他の側から、エラーをスローしなければなりません1に設定しようとしている2番目のフィールドを更新しますので、場合他のビットフィールドが設定されている場合にのみビットフィールドを設定できるようにする

1に - それは動作する必要があります。

おそらく、これはチェックの制約で行うことができます。

答えて

2

テーブルレベルCHECK CONSTRAINTを追加するだけで十分です。

ALTER TABLE YourTable 
ADD CONSTRAINT CKC_BITS CHECK (FirstBit = 1 OR SecondBit = 0) 
関連する問題