一意の条件付き制約を持つ正しい方法は何でしょうか? したがって、ユーザーがAccountIdentifierフィールドに何も入力せずにサブミットすると、データベースにNullとして表示されますが、ユニーク制約のために複数のNULLを持つことはできません。一意の列に複数のNULLを受け入れる条件を持つ一意の制約
CREATE TABLE [dbo].[AccountTemplate]
(
[AccountID] INT NOT NULL,
[AccountIdentifier] NCHAR(50) NULL,
CONSTRAINT [FK_AccountTemplate_Identifier] UNIQUE NONCLUSTERED ([AccountIdentifier] ASC, [AccountID] ASC)
)
ご質問には当てはまらないタグを使用しないでください。 –
JamesZの回答は正しいですが、いくつかのキャッチがあります。このアプローチについては、次のsqlmagの記事でよく説明されています。 http://sqlmag.com/blog/whats-good-use-unique-filtered-index –