0

packtpub asp.net ソーシャル ネットワーキングを読んでいますが、理解に問題があります。

「テーブルに必要な関係は次のとおりです」

  • 所有アカウント経由の友達とアカウント
  • 友達アカウント経由の友達とアカウント
  • ...

    とはどういう意味ですか? どのタイプの関係を使用しますか?

    • 所有しているアカウントを介した友達とアカウント (多対 1?)
    • 友達アカウント経由の友達とアカウント (多くの場合?)
4

1 に答える 1

1

私は本を​​読んでいませんが、Friends テーブルと Account テーブルの間に 2 つの同様のリレーションシップがあることを意味しますが、それぞれのリレーションシップで異なる Friends 列が使用されます。

フレンドシップとは、2 つのアカウント間の関係です。そのため、Friends テーブルで 2 つのアカウントを参照する必要があります。簡単な例として:

アカウント テーブル:

  • ID(主キー)
  • ユーザー名

フレンド テーブル:

  • Account1ID (主キー)
  • Account2ID (主キー)

Friends テーブルは、任意の 2 つのアカウント間の友情を一意に表します。参照整合性を維持するには、Friends テーブルと Account テーブルの間に (外部キーとして) 2 つのリレーションシップが必要です。

  • Friend.Account1 -> Account.ID
  • Friend.Account2 -> Account.ID

友情に関係するアカウントごとに 1 つの関係。

事実上、Friends テーブルは多対多のリレーションシップのリンク テーブルです。単に Accounts がたまたまリレーションシップの両側のテーブルになっているだけです。これは、アカウントと別のアカウントの間の多対多の関係です。

于 2013-02-18T22:38:03.360 に答える