私の問題では、「Person」データベースに2つの列があります。1つの列には、その人が属するグループが格納され、1つの列には、その人がグループの管理者であることが格納されます。一度グループは1人の管理者しか持つことができません。
私の考えは、両方の列に独自の制約を設定する必要があるということです。しかし、問題は、管理者ではない他のユーザーにとって、独自の制約が破られることです。
彼の問題の適切な解決策は何であるべきか。
サンプルデータベース
----------------------------------
Person_id | Group_Id | Is_admin
----------------------------------
1 | 9 | null
2 | 9 | null
3 | 9 | null
4 | 9 | 1
5 | 9 | null
6 | 4 | null
7 | 4 | null
8 | 4 | null
9 | 4 | 1
ここで、Group_IdとIs_adminに一意の制約を適用すると、それらは一意になりますが、その人が管理者でない場合はそうではありません。