SQL Server 2005:他の列の値に応じて列に非NULL制約を設定する方法は?

StackOverflow https://stackoverflow.com/questions/823481

  •  05-07-2019
  •  | 
  •  

質問

表の2つの列は請求可能(ビット)、請求可能日付(日付時刻)です。請求可能がnullでない場合、請求可能日付をnullにしたくない。

役に立ちましたか?

解決

チェック制約を追加します:

CHECK(請求対象がnullではなく、請求可能日付がnullではない)または(請求対象がnull)

他のヒント

チェック制約が必要です

ALCHECK TABLE dbo.Table with NOCHECK
      制約の追加CK_Table_BusinessRule       チェック(請求対象はNULLではなく、請求可能日付はNULLではありません)

http://msdn.microsoft.com/ en-us / library / ms179491(SQL.90).aspx

挿入後および更新後に、制約を強制するために、テーブルにトリガーを追加してみます。 請求可能な値を確認し、nullでなく請求可能な日付がnullの場合は、挿入/更新をブロックします。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top