0

ERDの部分は3つのテーブル間の関係を示します。このテーブルに新しいプライマリキーが必要ですか?

ユーザーは、トラックが途中で多くのユーザー

テーブルが所有することができ、多くのtarcks(曲)

を所有することができ、多くの関係に多くを解決し、複合主キーを持っています。特定のユーザーが特定のトラックを評価する方法に関する情報を保存するだけでなく、

http://i.imgur.com/Rn4PnGO.png

「User_Rating_ID」真ん中のテーブルを新しい主キーが必要なのか、それは大丈夫です(よりよい?)複合キーとしてそれを残すために?

答えて

0

どのようにデータを使用しているかによって異なります。

厳密に論理的な観点から、複合主キーは、何が言われるべきかを示し、うまく動作します。別個のPKを持つことが有用であることがある珍しい状況がいくつかあります。

+0

これらの状況を詳しく説明したり、正しい方向に私を指差してください。私はこの問題を尋ねましたが、特に役立つものは見つかりませんでした。 – user388600

0

交差点を介してリンクされている2つのテーブルを指し示す2つの外部キー列で構成される複合主キーを持つ多対多の交差テーブルに問題はありません。

追加の候補主キー、特に意味のないシステム生成ID番号(またはGUIDなど)をそのような交差テーブルに追加することがあります。誰かがこれは含まれる行うことが

の理由:*は

  1. 「親」(リンク)テーブルには、いくつかのために複雑になる一方の端部に変更し、外部キーの1つ(またはそれ以上)を更新します理由。主キーの更新が気に入らない人もいます。 ORMによっては許可されないものがあります。
  2. 交差点自体が、交差点を指す外部キーを必要とする1つ以上の子テーブルの親である可能性があります。コンパウンドキーを他のテーブルに伝播すると、コードが複雑になる可能性があります。使用している場合は、ORMでサポートされている場合とサポートされていない場合があります。
  3. 交差点のレコードがコンボボックスに表示され、コンボボックスコントロールに単一のリストアイテム整数配列があるような、単一の列候補キーを持つユーザーインターフェイスベースの理由があります。交差テーブルから記録する。
  4. 他の候補主キーが何であるかにかかわらず、それぞれのテーブルに単一の代理キーを必要とするシステム制約があります。たとえば、table_namerecord_idchange_datechange_userのような項目を追跡する監査ログ機能があるとします。
  5. 一部の人は、サロゲートキーを持つ必要があるすべてのテーブルと同じように感じます。なぜなら、サロゲートキーはワールドビューだからです。

注:私はこれらの理由のいずれかを主張していません。私は彼らがあなたが "野生の中で"見つけることができる意見であると述べています。あなたの走行距離は、あなた自身の決定を変えることができます。

1

交差テーブルは、2つのエンティティ間の関係を定義します。それが匿名の関係であれば、別個のサロゲートキーは必要ない。

例えば、PartsのテーブルとUnitsのテーブルは、どのUnitが各Unitを作成するために使用されるかを定義するテーブルを持つことができます。各パーツは複数のユニットで使用でき、各ユニットは多くのパーツで構成されています(場合によっては特定のパーツのいくつかがあります)。このようなテーブルは次のようになります。

UnitID PartID Qty 

このような交差テーブルは、おそらくサロゲートキーを持っていないでしょう。関係について質問されるよくある質問は次のとおりです。

  • ユニットXを作るために使用されるのはどの部分ですか?
  • ユニットXを製造するために使用される最も安価な/最も高価な部品は何ですか?
  • パーツPを含むユニットはどれですか?
  • パーツPが最も多く必要なユニットはどれですか?

この関係の別のキーが使用される状況は考えられません。すべての質問は、特定の部分または特定の単位に関係します。

一方、コースと学期を取る。交差点テーブルは、コース、すなわちコースを教える特定のセッションを確立する。ここでは、同じ学期内に特定のコースのいくつかのインスタンスが存在する場合があります。スミス教授のm-w-fでは1日1時間、ジョーンズ教授のt-thは毎日1.5時間のMath-101クラスがあります。登録および他の将来の記録保管中

は、数学-101または追跡する学期が、使用される特定のクラスではありません。このため、別の代理キーが必要になります。

あなたのインスタンスでは、関係が匿名かどうかが分析によって決定されます。

関連する問題