Skip to content
uencoder

Normalization

Database normalization is the process of decomposing tables to eliminate redundancy and update anomalies, with normal forms from 1NF to BCNF/5NF growing stricter.

Purpose

To eliminate data redundancy and update anomalies (insert/delete/modify), guaranteeing data integrity.

Mechanism

1NF: atomic values. 2NF: eliminate partial dependencies (non-prime attributes fully depend on the key). 3NF: eliminate transitive dependencies. BCNF: every determinant is a candidate key. Normalization reduces redundancy but adds JOINs; balance against denormalization.

Use cases

  • Relational database design
  • Eliminating data redundancy
  • Data integrity assurance
  • Teaching and modeling

Examples

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

    Table decomposition

Common errors

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

Related terms

Related tools

References