質問: データベースのテーブル構成を考えているのですが、 親テーブルと子テーブルがある場合、外部参照用のキーは、親テーブル、小テーブルどちらに付けるべきでしょうか? **Bookテーブル** * id * name * page Id ??? **Pageテーブル** * id * pageIndex * book Id ???
回答: 小テーブル(多側テーブル)です。 親テーブル(一側テーブル)に子テーブルを参照するフィールドを置いたら、親は一つの子しか持つことができなくなります。(こうなると一対多の関係ではなくなる。) 質問の Book と Page だと 1ページしかない本しか扱えなくなる。