SQL

データベースの正規化

データベースの正規化は、データの重複を排除し、データの整合性を保つためのプロセスです。以下は、正規化の主な手順と各段階の概要です:

1. 非正規形 (Unnormalized Form, UNF)

  • データが整理されていない状態。
  • 繰り返し項目や複数の値が1つのセルに含まれている場合があります。

2. 第一正規形 (1NF)

  • 目的: 繰り返し項目を排除し、各セルに単一の値を持たせる。
  • 手順:
    • 繰り返し項目を別のテーブルに分割。
    • 各行が一意に識別できるように主キーを設定。

3. 第二正規形 (2NF)

  • 目的: 部分関数従属を排除する。
  • 手順:
    • 主キーの一部に依存する列を別のテーブルに分割。
    • 主キー全体に依存する列のみを残す。

4. 第三正規形 (3NF)

  • 目的: 推移的関数従属を排除する。
  • 手順:
    • 主キー以外の列に依存する列を別のテーブルに分割。
    • 主キーに直接依存する列のみを残す。

5. ボイスコッド正規形 (BCNF)

  • 目的: 主キー以外の候補キーによる関数従属を排除する。
  • 手順:
    • 候補キーに依存する列を別のテーブルに分割。

6. 第四正規形 (4NF)

  • 目的: 多値従属を排除する。
  • 手順:
    • 多値従属が存在する場合、それを別のテーブルに分割。

7. 第五正規形 (5NF)

  • 目的: ジョイン従属を排除する。
  • 手順:
    • テーブルを分割してもデータの再構築が可能な状態にする。

正規化を進めることで、データの一貫性が向上し、更新や削除時の問題を防ぐことができます。ただし、過度な正規化はパフォーマンスに影響を与える場合があるため、実際の要件に応じたバランスが重要です。

タイトルとURLをコピーしました