私の簡単な例はこれです。私は映画テーブルを持っており、映画には監督と俳優がいます。私のデータベースでは、映画には 1 人以上の監督と 1 人以上の俳優を含めることができます。また、人の情報を持つテーブル Persons があります。そのため、人は映画でさまざまな役割を持つことができます。可能な役割を持つ他のテーブル、テーブル Roles があります。
多くの場合、映画の監督や俳優を知りたいので、主に 2 つの方法でテーブルを決定します。
最初のオプション: 三項関係:
Movies(IDMovie, ...)
Persons(IDPerson, ...)
Roles(IDRol,...)
MoviesPersons(IDMovie, IDPerson, IDRol...)
この場合、三項関係を使用します。
2 番目のオプションは次のとおりです。
MoviesDirectors(IDMovie, IDPerson,...)
MoviesActors(IDMovie, IDPerson,...)
この場合、関係テーブルからロールを推測できます。
最良の選択肢はどれですか?
ありがとう。
編集: 2 つの二項関係のオプションを使用する場合、将来、サウンドトラックの作曲者が必要な場合は、新しいテーブルと関係を作成する必要がありますが、三項関係を使用する必要はありません。何もせず、ロール テーブルに新しいロールを追加するだけです。
パフォーマンスでは、1 つの三項関係ではなく 2 つの二項関係の方が優れていますか?
ありがとう。