データに次のチェック (制約?) が適用されていることを確認したい
- このテーブルは、ハブ/カテゴリごとに 1 つの BorderColour のみを持つことができます。(例: #FFAABB)
- ただし、複数の null を持つことができます。(このフィールドでは、他のすべての行は null です)
テーブル スキーマ
ArticleId INT PRIMARY KEY NOT NULL IDENTITY
HubId TINYINT NOT NULL
CategoryId INT NOT NULL
Title NVARCHAR(100) NOT NULL
Content NVARCHAR(MAX) NOT NULL
BorderColour VARCHAR(7) -- Can be nullable.
チェック制約を作成する必要があると思いますか?しかし、私はどのようにわからない、など。
サンプルデータ。
1, 1, 1, 'test', 'blah...', '#FFAACC'
1, 1, 1, 'test2', 'sfsd', NULL
1, 1, 2, 'Test3', 'sdfsd dsf s', NULL
1, 1, 2, 'Test4', 'sfsdsss', '#AABBCC'
今..次の行を追加すると、SQLエラーが発生するはずです....
INSERT INTO tblArticle VALUES (1, 2, 'aaa', 'bbb', '#ABABAB')
何か案は?