INI
Database Normalization Forms - INI
Database normalization forms are a set of progressive rules defined in relational database design to eliminate data redundancy and maintain data integrity. They exist from First Normal Form (1NF) to Fifth Normal Form (5NF), each addressing specific data dependency issues. Generally, applying up to Third Normal Form (3NF) ensures practically sufficient data quality. Normalization prevents inconsistencies during updates and improves database maintainability and efficiency.
database
normalization
relational database
data design
SQL
[item.first-normal-form]
code=1NF
slug=first-normal-form
name=First Normal Form
description=A state where each cell in a table contains only a single value, eliminating repeating groups.
keyRule=Store only single values (atomic values) and eliminate repeating groups
level=1
[item.second-normal-form]
code=2NF
slug=second-normal-form
name=Second Normal Form
description=A state that satisfies 1NF and eliminates partial functional dependencies on the primary key.
keyRule=Non-key attributes must be fully dependent on the entire primary key
level=2
[item.third-normal-form]
code=3NF
slug=third-normal-form
name=Third Normal Form
description=A state that satisfies 2NF and eliminates transitive functional dependencies.
keyRule=No dependencies exist between non-key attributes
level=3
[item.boyce-codd-normal-form]
code=BCNF
slug=boyce-codd-normal-form
name=Boyce-Codd Normal Form
description=A state with stricter conditions than 3NF where all determinants are candidate keys.
keyRule=All determinants must be candidate keys
level=4
[item.fourth-normal-form]
code=4NF
slug=fourth-normal-form
name=Fourth Normal Form
description=A state that satisfies BCNF and eliminates multi-valued dependencies.
keyRule=Eliminate multi-valued dependencies by splitting independent multi-valued attributes into separate tables
level=5
[item.fifth-normal-form]
code=5NF
slug=fifth-normal-form
name=Fifth Normal Form
description=A state that satisfies 4NF and eliminates join dependencies.
keyRule=Eliminate join dependencies by decomposing into semantically independent tables
level=6