
164
本のレビューサイトのテーブルを設計
する例③ ~必要なテーブルの決定~
5-18
5-16で整理した要件や、5-17で作成したER図(図 5-30)などの内
容をふまえて、必要なテーブルやカラムを決めるを行ってい
きます。その途中経過が図5-31 のようになりました。
今回の場合はER図とほぼ同様の形でユーザー、レビュー、本を保存す
るテーブルを設けます。ここでもし必要であれば正規化を行い、テーブル
の分離なども検討します。それぞれのテーブルにはレコードを識別するた
めの「id」カラムも設けました。
また、ユーザーとレビューは1 対多の関係になっており、多にあたるレ
ビューのテーブルに、レコードを紐付けるためのカラムとして「ユーザー
ID」を設けておく必要があります。同様にして、本とレビューテーブルを
紐付けるためにレビューテーブルに「本ID」カラムを設けてあります。
図5-30 の他にも必要なテーブルがまだあります。図5-30 で表したER
図では、お気に入り機能のためにユーザーと本は多対多の関係にありまし
た。このような関係をテーブルで表現するために、図5-32 のようにお気
に入りテーブルも追加する必要があります。
ユーザーと本のテーブルの間にお気に入りテーブルを新たに設け、
ことができます。このような役割のテーブルのことを中間テーブルと
呼びます。
これで1 人のユーザーから複数の本、 ...