目的
- DBのテーブル設計をするにあたり基礎的な知識としての「DBのリレーション」について知る。
DBのリレーションとは??
- 文字通り「関係」を表す。
- テーブル同士の関係のことである。
リレーションの種類
一対多
- ベースとなるテーブルと、2つ以上のサブテーブルがあったとする。
- サブテーブルの主キーがベースとなるメインのテーブルで使用されていることを指す。
- 下記画像の場合、ベースとなるテーブルが「社員テーブル」で、サブテーブルが「会社テーブル」「部署テーブル」である。
多対多
- リレーショナルデータベース(RDB)では作成してはならないものである。
- 現実世界に存在するものに対して関係性を洗わす図(ER図など)を作るとできてしまうことがある。
- 下記の画像で説明すると、一人の学生は複数の講義を履修することができる。一つの講義は複数の学生に履修してもらうことが可能である。
- 関連実体をもって解決する。簡単に言うとた多対多のテーブルをつなぐ新たなテーブルを作成してあげればよい。
- 新たに「受講テーブル」を作成してあげればベースとなるテーブルが「受講テーブル」で、サブテーブルが「学生テーブル」「講義テーブル」となり、一体多ののリレーションが出来上がる。