What is Normalization?
Normalization is the process of organizing data in a database to reduce redundancy and improve data integrity. It divides large tables into smaller related tables.
Need for Normalization
- Reduce data redundancy
- Improve data consistency
- Avoid insertion anomalies
- Avoid deletion anomalies
- Avoid update anomalies
Types of Normal Forms
- First Normal Form (1NF)
- Second Normal Form (2NF)
- Third Normal Form (3NF)
- Boyce-Codd Normal Form (BCNF)
First Normal Form (1NF)
A table is in 1NF if:
- Each column contains atomic values.
- No repeating groups are present.
- Each row is unique.
Second Normal Form (2NF)
A table is in 2NF if:
- It is already in 1NF.
- No partial dependency exists.
- Every non-key attribute depends on the whole primary key.
Third Normal Form (3NF)
A table is in 3NF if:
- It is already in 2NF.
- No transitive dependency exists.
- Non-key attributes depend only on the primary key.
Boyce-Codd Normal Form (BCNF)
BCNF is an advanced version of 3NF. For every functional dependency, the determinant must be a candidate key.
Advantages of Normalization
- Reduces redundancy
- Improves consistency
- Saves storage space
- Improves database maintenance
- Reduces anomalies
Exam Points
- 1NF → Atomic values
- 2NF → No partial dependency
- 3NF → No transitive dependency
- BCNF → Determinant must be candidate key
- Normalization reduces redundancy