Normalization Process Example
In this example, we will look into how we can normalize the
database with the help of different Normal Forms. We will look into
each of the Normal Forms separately in this example.
Consider the table 1 shown below:
Institut Course Resu
Full Name
e s lt
Naveen DBMS,
IIT Delhi Pass
Kumar OS
Utkarsh IIT
CN. COA Fail
Tiwari Bombay
Utkarsh
IIT Kanpur OS Fail
Tiwari
Now, we are re-structuring the table according to the 1st Normal
Form.
Rules of 1st Normal Form
● Each table should contain a single value.
● Each record needs to be unique.
Table 1 after applying 1st Normal Form:
Full Name Institute Subject Result
Naveen Kumar IIT Delhi DBMS Pass
Naveen Kumar IIT Delhi OS Pass
Utkarsh Tiwari IIT Bombay CN Fail
Utkarsh Tiwari IIT Bombay COA Fail
Utkarsh Tiwari IIT Kanpur OS Fail
Consider the table 2 shown below:
Institut Subje Resu
Full Name
e ct lt
Utkarsh IIT
COA Fail
Tiwari Bombay
Utkarsh
IIT Kanpur OS Fail
Tiwari
Here, People having the same name are from different institutes. So,
we require Full Name and Institute to Identify a Row of the
database. For this, we have to remove Partial Dependency.
Let’s look at the 2nd Normal Form.
Rules of 2nd Normal Form
● The table should be in 1NF.
● Primary Key does not functionally dependent on any subset
of Candidate Key.
Table 1
Institut Resu
ID Full Name
e lt
Naveen
1 IIT Delhi Pass
Kumar
Utkarsh IIT
2 Fail
Tiwari Bombay
Utkarsh
3 IIT Kanpur Fail
Tiwari
Table 2
ID Subject
1 DBMS
1 OS
2 CN
2 COA
3 OS
Here, the Id in Table 2 is Foreign Key to the Id in Table 1. Now, we
have to remove Transitive Functional Dependency from our Table to
Normalize our Database. A Transitive Functional Dependency
basically tells us that there is an indirect relationship between
functional dependency.
Now, let us look at the 3rd Normal Form.
Rules of 3rd Normal Form
● The tables should be in 2NF.
● There will be no Transitive Dependency.
Table 1
Institut Result_I
ID Full Name
e D
Naveen
1 IIT Delhi 1
Kumar
Utkarsh IIT
2 2
Tiwari Bombay
Utkarsh
3 IIT Kanpur 2
Tiwari
Table 2
Subje
ID
ct
1 DBMS
1 OS
2 CN
2 COA
3 OS
Table 3
Result_I Resul
D t
1 Pass
2 Fail
On
3
Hold
Finally, Our Database is Normalized. From the above-mentioned
example, we have reached our level of Normalization. In fact, there
are also some higher forms or next levels of Normalization. Now, we
are going to discuss them one by one.