複雑なチェック制約を持つことは可能ですか?
たとえば、各レコードに顧客タイプが割り当てられている顧客テーブルがあります。
したがって、同じタイプの顧客が複数いる可能性があります。
タイプごとに 1 人の顧客をそのタイプの「プライマリ」アカウントに設定したいのですが、タイプごとに 1 人の顧客しかプライマリにできません。
IsPrimary フィールドにチェック制約を追加して、同じタイプのすべての顧客をチェックして、プライマリとしてマークされた顧客がすでに存在するかどうかを確認することはできますか?
これは明らかに C# コードで実行できますが、これは追加のチェックとして行いたいと思います。
トリガーを使用することもできますが、すべてのエラーに対して同じ方法でエラーを処理できるように、制約に固執したいと考えています。
ありがとう