2011-12-29 8 views
1

特定のフィールドに複数の値がある場合に、どのようにテーブルを構造化すべきかを考えました。たとえば、10人の友人がいるユーザーがいる場合、ユーザー名を持つ行が10行、各行に別の友達が存在するか、ユーザー名と1人の友人が1つの行になるはずです。ありがとう、答えは多くの助けになります。データベースの使用中にテーブル構造をどのように動作させるべきですか?

答えて

1

外国人のキーを友人である2人の人と一緒にリンクする多対多のテーブルを作成する必要があります。したがって、Personが使用しているエンティティの場合、10人の友人などの制限を1つの行に導入して構造を制約することは望ましくありません。

+0

を読みますか? –

+0

最初は10行ですが、1つの 'Person'にさらに多くの友達を追加すると、この多対多表にさらに多くの行が追加されます。それが役に立ちそうなら、 'Friends'テーブルと呼んでください。友人は双方向性であるため、1行は関係する両方のPersonオブジェクトによって共有される友情であることを意味します。 –

+0

私はあなたが特定のユーザーが持っているそれぞれの新しい友達のために新しい行が必要かどうかを知っている私はちょうどその部分を持っていることを知っているよ知って –

0

基本的には、データを正規化することです。あなたはちょっと私が10行で言ったものと同じようにDatabase Normalization

関連する問題