Second Normal Form (2NF) :-A table is said to be in its Second Normal Form if it satisfied the following conditions:-
1) It satisfies the condition for the First Normal Form (1NF),
2) It do not includes any partial dependencies where a column is dependent only a part of a primary key.
For example suppose we have a table EmpProjDetail, which contains the employee details and its project details like projected, project name and durations in terms of days on which he/she is allocated to the project.
Table Name:-EmpProjDetail
Primary Key :- EmpId + projectid
| | | | |
1 | 1 | Vivek | Abc Bank | 35 |
2 | 2 | Sudeep | AbeBook | 10 |
In this table, the primary key is composition of two columns EmpId and ProjectId. Now this table is in 1NF but it is not in the 2NF since the column EmpName can be depended on the column EmpId and the column ProjectName can be depended on the column ProjectId which violates the second condition for the 2NF.
We can break this table into three different tables to convert it into the 2NF. These tables are given below:-
Table name:- EmpDetails
Primary Key: - EmpId
Table name:- ProjDetails
Primary Key: - ProjectId
Table name:- EmpProjdetails
Primary Key: - empId + ProjectId
Now all the three tables are in 1NF and all the columns of these tables are fully depended on their respective primary keys.