0

データベースの正規化手法には精通していますが、特定のシナリオで苦労しています。私は 100 近くのドキュメントを持っており、それぞれに少なくとも 1 人の著者がいます。ユーザーが作成者固有のドキュメント、年別ドキュメントを要求したり、単純にこれまでのすべてのドキュメントを表示したりできる機能を作成したいと考えています。私が苦労している部分は、著者または著者によるドキュメントの要求です。

私の関係の内訳は次のとおりです。著者には多くのドキュメントがあり、ドキュメントには多くの著者があり、ドキュメントには 1 年、ドキュメントには 1 つのタイトルがあります。それが私が働かなければならないことです。

これまでのリレーショナル テーブルは次のとおりです。

著者テーブル

+---------+-------------+
| | ID | 名前 |
+---------+-------------+
| | 1 | デビッド・ノイス |
+---------+-------------+

ドキュメント テーブル

+----------+--------------------+----------+------ ---+-----------+
| | ID | タイトル | ブロブ | 年 | 年 | ???? | |
+----------+--------------------+----------+------ ---+-----------+
| | 1 | 自動車事故, ウィスコンシン州 | もの | 2013年 | ? | |
+----------+--------------------+----------+------ ---+-----------+

私は著者IDを私の????の場所にしたいと思っています。は私のドキュメント テーブルにあり、各ドキュメントの作成者が 1 人だけの場合、おそらくうまく機能しますが、そうではありません。ドキュメントを多くの作成者に関連付ける最良の方法は何ですか?

4

1 に答える 1

3

ドキュメントと作成者の間に 1 対多または多対多の関係を確立できるジャンクション テーブルを追加するだけです。

ドキュメント作成者
--------------
ドキュメント ID
著者ID
于 2013-10-17T16:17:07.153 に答える