2011-01-20 1 views
0

は私がこれをテーブルで表現する方法は?

Programme title | Episode | Subtitle | Performers | Description 

のようなデータの収集を持っ当初、私は私が私も別のテーブルにパフォーマーを表現したいと思っていますので、

PROGRAMME 

progid | progtitle | description 

EPISODE 

epid | progid | episode | subtitle | description 

のような2つの表にこれを正規化し、それを表現する方法は不明です。プログラムは、多くの多くのパフォーマー

  • つを持つことができます:パフォーマーは、多くのプログラムで
  • を備えています可能性があり、私はわからないんだけど、私は次の関係が多くの

    • つ存在伝えることができるものから、どのように私はこれを表すだろうか?

      EDITああ私は実際にこのようなテーブルを持っていると思いますか?

      PERFORMER 
      
      performerid | performer 
      
      PROGRAMME 
      
      progid | progtitle | description 
      
      EPISODE 
      
      epid | progid | episode | subtitle | description 
      
      PROG_PERFORMER 
      
      progid | performerid 
      
    +0

    PROG_PERFORMERテーブルがすべきとの間で変更することができますEPISODE_PERFORMERである。出演者がエピソードごとに変更し、PROG_PERFORMERテーブルを変更すると、すべてのエピソードの出演者が変更されます – TimC

    答えて

    1

    多対多です。 1人のパフォーマーは複数のプログラムに参加でき、1人のプログラムには複数のパフォーマーが参加することができます。

    多対多関係の設定について、ネット(および教科書)には多くの情報があります。それは

    これは、すべてのパフォーマー/ショー/エピソードの関係をリストするクエリを作成するのに十分です。パフォーマーのテーブルの横に

    1

    あなたは関係テーブルに作成する必要が

    パフォーマーテーブル

    performerid | name | ... 
    

    また

    performerid | progid 
    
    2

    関係テーブルは、パフォーマーはエピソード

    +0

    良いキャッチです。 +1。私はそれを考えましたが、私が投稿した後、私の答えに追加する前に投稿しました。 – David

    +0

    次に、 'performerid'と' epid'であなたの関係テーブルを作成してください – lweller