コンテンツへスキップ
uencoder

Normalization

データベース正規化は、テーブルを分解して冗長性と更新異常を排除するプロセスである。第一正規形からBCNF/第五正規形へと段階的に厳格になっていく。

目的

データの冗長性と更新異常(挿入・削除・修正)を排除し、データ整合性を保証する。

メカニズム

第一正規形は原子値を要求する。第二正規形は部分依存(非主属性がキーに完全依存すること)を排除する。第三正規形は推移的依存を排除する。BCNFではすべての決定項が候補キーである。正規化は冗長性を減らすがJOINを増やすため、非正規化とのバランスが必要である。

ユースケース

  • リレーショナルDBの設計
  • データ冗長性の排除
  • データ整合性の保証
  • 教育とモデリング

例

  • 入力
    Split an orders table into orders + customers + products
    Output
    3NF eliminates redundancy

    Table decomposition

よくあるエラー

Over-normalization leads to excessive JOINs in queries
Denormalize moderately for read-heavy scenarios

関連用語

関連ツール

References