【DB設計】
RDBで、表や表中の列を設計すること。
これらが適切なものかでシステム実行時の性能や拡張性に影響を与える。
不適切なものでと重複データが格納されたり、データの不整合が起こる。
正規化
最適な列設計をおこなう。
( ※ 列の増減はしない、行の増減をする。)
非正規形から第5正規形まで段階的におこなうのが基本。
・非正規形
↓ 第1正規化
・第1正規形
↓ 第2正規化
・第2正規形
↓ 第3正規化
・第3正規形
↓ 第4正規化
・第4正規形
↓ 第5正規化
・第5正規形
※ 正規形とは、正規化された表
第1正規化:繰り返し要素を排除
1行で複数行のデータを修飾している行を結合を解除する。
そして、元のデータを入れて、1行ずつに分割する。
第2正規化:主キーの一部の関数従属性を排除
主キーの一部に関数従属性があれば、表を分割し、別表とする。
第3正規化:主キー以外の列の関数従属性を排除
主キー以外の列に関数従属性があれば、表を分割し、別表とする。
※ 関数従属性とは、ある列に値が連動する別の列が存在する状況
例) 社員番号に連動する社員名 など。