データベース応用
第 6 回
(データベースの正規化)
「ER 図を用いた関係データベースの検討」
講義ノート目次
ER 図を用いた関係データベースの検討をするために、
更新異常が発生した場合を考えよう。
データ {教員名, 曜日, 時限, 時期, 科目, 教室}
について考えよう。
-
変更異常: 科目名はそのままだが担当教員がいくつか変更になり、
曜日と時限が変更になる。
間違いが発生しやすい場合は、例えば、
教室名は変更しなくてよいのに、
INSERT ですべて変更する実行文を実行する必要が出てくる。
- 挿入異常: 教員が 1 つも担当科目がない場合、
主キー制約のため全てを NULL にすることができない。
科目名に値のないタプルを挿入できない。
- 削除異常: 教員の担当科目が 1 つしかなかったときに、
この行を削除すると、教員自体が存在しないということになる。
この問題は、関係表を適切に分割することで、解決ができる。
これを正規化という。