1対0または1(1-0..1)の関係が存在するシナリオ用のデータベースを設計しているとしましょう。例えば:
- ユーザーのセットがあり、一部の ユーザーは顧客である場合もあります。
したがって、対応する2つのテーブル、usersおよびを作成しましたcustomersが、…
…特定のSQLプラットフォームでこの状況を表現して実装する最良の方法は何ですか?私は2つの可能な解決策を検討しました:
で
usersテーブル、追加customerのFOREIGN KEY参照のいずれであってもよく、列customersまたはNULLマーク。customersテーブルに、テーブルを指すuser列(UNIQUE制約付きで設定)を含めusersます。
すでにいくつかのフォーラムで同様の質問をしましたが、答えは基本的に「必要なものは何でも」「便利だと思うものは何でも」でした。このような答えは好きではありません。代わりに、DB理論の真面目な部分が必要です。1-0..1の関係についてどこで確認できますか?