第1・第2・第3正規形など、データの重複を整理する考え方を問題演習で確認できます。
詳しい解説を見る →第1正規形は繰り返し項目をなくし、第2正規形は部分関数従属をなくし、第3正規形は推移的関数従属をなくします。
詳しい解説を読む →この演習は、知識を確認するだけでなく、解き方を説明できるようになることを目標にしています。まず以下の例題を確認し、その後で上のトレーニングに挑戦してください。
注文ID・顧客ID・商品IDなどの注文情報と、顧客ID・住所などの顧客情報を分離すると、住所変更時の更新漏れを防ぎやすくなります。
主キーと関数従属性を確認し、重複や更新時の不整合が起きる列を探します。
単に表を小さく分割するだけでは正規化になりません。
問題を解く前に例題を読み、計算や判断の根拠を自分の言葉で説明してみましょう。
同じ顧客の住所が複数行に重複します。住所変更時に一部だけ更新すると不整合が生じるため、顧客表に分けて顧客IDで関連付けます。
分割すること自体が目的ではありません。属性が何に依存するかを確認します。
顧客マスタと注文データを分ける設計はECや販売管理システムで一般的です。
更新漏れによるデータ不整合。
復習したい場合は 詳しい解説記事 を読み、上の演習問題にもう一度挑戦してください。