第2正規形
意味・解説
第1正規形であり、かつ主キーの一部にのみ依存する項目を別テーブルに切り出した形式。
第1正規形のテーブルにおいて、複合主キー(複数の列の組み合わせ)の一部によって決まる項目を分離したもの。これを「部分関数従属の排除」という。例えば「注文ID」と「商品ID」で成り立つテーブルから、商品IDだけで決まる「商品名」を別テーブルに分けることで、データの重複と矛盾を防ぐ。
くわしく
データの重複を物理的に排除し、修正ミスによるデータの不整合(更新異常)を防ぐための段階である。
1. 部分関数従属の排除:複合主キー(AとBで1行を特定する場合)において、Aが決まれば自動的に決まる項目を別表に移す。これにより、同じ情報を何度も書く手間が省ける。
2. 保守性の向上:例えば商品名が変更になった際、100万件の注文レコードすべてを書き換えるのではなく、切り出した「商品マスターテーブル」の1行を直すだけで済むようになる。
3. 実務での意義:ディスク容量の節約だけでなく、システム運用の正確性を担保するために極めて重要である。実務では「マスタ」と「トランザクション(履歴)」を分ける作業そのものが第2正規化に近い。試験では、主キーが1つの場合は自動的に第2正規形を満たしているか、第3正規形の検討へ進む点に注意。
例文
受注テーブルに含まれていた、商品コードだけで決まる商品単価を別テーブルに分離し、第2正規形とした。
同義語: 2NF
分類: 正規化