ER図の書く手順
ER図は、E:エンティティとR:リレーションを書く。
■1.E(エンティティ)について
1テーブル1エンティティとしてしまう(本当はそうじゃないけど、最近、そう考える人も多い気がする。Amateras ERDなんか、もろテーブルって書いてるし・・・)
エンティティは四角形で表され、
上の部分に、テーブル名。
区切り線があって
下の部分に、項目を並べることになる。
主キー項目には、下線を引くことが多い
■2.R(リレーション)について
・2つのテーブル間において
(1)あるテーブル(Aとする)の主キーが、他のテーブル(Bとする)の主キーの一部になっているとき
Aのテーブルが親、Bのテーブルが子。
親が1、子が多(原則)で、リレーションが引かれる。
例:受注(受注番号)と、受注明細(受注番号、明細番号)の場合、
受注が親で1、受注明細が子で多
(2)あるテーブル(Aとする)の主キーが、他のテーブル(Bとする)の主キーと同じ
1対1または0、どちらが親か分からない
ただし、この場合、たいてい継承関係なので、意味を考えると親子関係が分かる
例:従業員テーブルと管理職テーブルで、どちらも従業員NOが主キー
(3)あるテーブル(Aとする)の主キーが、他のテーブル(Bとする)の主キー以外の項目
Aのテーブルが親、Bのテーブルが子(原則)。
親が1、子が多(原則)で、リレーションが引かれる。
なお、項目が同じかどうかは、意味的に判断する(文字的に同じとは限らない)
例:従業員テーブルの従業員ID=受注テーブルの担当者ID
(1)、(2)が第2正規形、(3)が第三正規形に相当する。
・ただし、3つ以上のテーブルに関して
上記の2つのテーブル間で、
A-B、A-C間に親子関係があっても、B-C間に親子関係があれば、
A-B-C
という親子(孫)関係になる。