0

私はそのようなデータのコレクションを持っています

Programme title |  Episode  |  Subtitle  |  Performers  |  Description

最初に、これを次のように2つのテーブルに正規化しました

PROGRAMME

progid  |  progtitle  |  description

EPISODE

epid  |  progid  |  episode  |  subtitle  |  description

パフォーマーを別のテーブルで表現したいと思っていますが、表現方法がわかりません。私が言えることから、次の関係が存在します

  • 1 対多: プログラムには多くのパフォーマーを含めることができます。
  • 1 対多: 1 人のパフォーマーが多くの番組に出演する可能性があります

これをどのように表現すればよいかわかりませんか?

EDIT ああ、なるほど、たとえば、実際にはこのようなテーブルがあるのでしょうか?

PERFORMER

performerid  |  performer

PROGRAMME

progid  |  progtitle  |  description

EPISODE

epid  |  progid  |  episode  |  subtitle  |  description

PROG_PERFORMER

progid  |  performerid
4

3 に答える 3

2

また、出演者はエピソード間で変更できます

于 2011-01-20T16:41:59.700 に答える
1

多対多です。1 人の出演者が複数の番組に出演することも、1 つの番組に複数の出演者が出演することもできます。

多対 5 月リレーションシップの設定に関する情報は、ネット (および教科書) にたくさんあります。そのようなリソースの 1 つがここにあります。

http://www.tekstenuitleg.net/en/articles/software/database-design-tutorial/many-to-many.html

本当はそうあるべきなのに

  • プログラムはエピソードと 1 対多の関係にあります
  • エピソードは、パフォーマーと多対多の関係にあります。

これは、すべてのパフォーマー/ショー/エピソードの関係を一覧表示するクエリを作成するのに十分です。

于 2011-01-20T16:40:39.577 に答える
1

実行者テーブルの横に、関係テーブルを作成する必要があります

パフォーマーテーブル

performerid | name | ...

関係表

performerid | progid
于 2011-01-20T16:41:13.633 に答える