Normalization is the process of minimizing redundancy from a relation or set of relations. Redundancy in relation may cause insertion, deletion and updation anomalies. So, it helps to minimize the redundancy in relations. Normal forms are used to eliminate or reduce redundancy in database tables.
Normalization is used for mainly two purposes:
- Eliminating useless data.
- Ensuring data dependencies make sense i.e data is logically stored.
- First Normal Form
- Second Normal Form
- Third Normal Form
- Fourth Normal Form
First Normal Form
- It should only have single(atomic) valued attributes/columns.
- Values stored in a column should be of the same domain
- All the columns in a table should have unique names.
- And the order in which data is stored, does not matter.
Second Normal Form
To understand what is Partial Dependency and how to normalize a table to 2nd normal for, jump to the Second Normal Form tutorial.
- It should be in the First Normal form.
- And, it should not have Partial Dependency.
Third Normal Form
Here is the Third Normal Form tutorial. But we suggest you to first study about the second normal form and then head over to the third normal form.
- It is in the Second Normal form.
- And, it doesn’t have Transitive Dependency.
Boyce and Codd Normal Form
It is a higher version of the Third Normal form. This form deals with certain type of anomaly that is not handled by 3NF. A 3NF table which does not have multiple overlapping candidate keys is said to be in BCNF.
- R must be in 3rd Normal Form
- and, for each functional dependency ( X → Y ), X should be a super Key.
Fourth Normal Form
Here is the Fourth Normal Form tutorial. But we suggest you to understand other normal forms before you head over to the fourth normal form.
- It is in the Boyce-Codd Normal Form.
- And, it doesn’t have Multi-Valued Dependency.