0% completed
The Second Normal Form (2NF) is the next stage in database normalization after achieving the First Normal Form (1NF). 2NF builds on 1NF by eliminating partial dependencies, ensuring that every non-key attribute in a table is fully dependent on the entire primary key. In other words, 2NF requires that each non-key attribute must rely on the whole primary key, not just part of it.
Note: A table needs to be in 1NF before it can be converted to 2NF. Partial dependencies only apply to tables with composite primary keys (primary keys consisting of multiple columns).
To satisfy the requirements of 2NF:
Consider the following Student_Course_Enrollment table, which records students enrolled in various courses along with their department. In this table, the primary key is a composite key consisting of Student_ID and Course_ID.
Student_ID | Course_ID | Student_Name | Department |
---|---|---|---|
101 | C101 | Alice Smith | Science |
101 | C102 | Alice Smith | Science |
102 | C101 | Bob Johnson | Arts |
103 | C103 | Carol White | Commerce |
In this table:
To bring this table into 2NF, we need to remove the partial dependencies by separating the table into two tables: Student and Enrollment. Here’s how we can structure them:
The Student table stores information unique to each student, with Student_ID as the primary key.
Student_ID | Student_Name | Department |
---|---|---|
101 | Alice Smith | Science |
102 | Bob Johnson | Arts |
103 | Carol White | Commerce |
The Enrollment table records the enrollment details of each student in various courses, using {Student_ID, Course_ID} as the composite primary key.
Student_ID | Course_ID |
---|---|
101 | C101 |
101 | C102 |
102 | C101 |
103 | C103 |
After separating the original table into Student and Enrollment tables:
Achieving 2NF helps reduce redundancy by ensuring that non-key attributes are not duplicated unnecessarily. It also improves data consistency by grouping attributes based on their dependencies on the primary key, making data easier to manage and reducing the chances of update anomalies.
In the next lesson, we’ll cover Third Normal Form (3NF), which addresses transitive dependencies to further reduce redundancy and ensure data integrity.
.....
.....
.....