coderz.py

Keep Coding Keep Cheering!

Third Normal Form(3NF)

SQL Views
What is Third Normal Form?

The third step in Normalization is 3NF. For a table to be in third normal form, it needs to satisfy the following conditions:

For every non-trivial function dependency X → Y.

  • X is a super key.
  • Y is a prime attribute, i.e., each element of Y is part of some candidate key.

Note:

  • If a relation is in 2NF and does not contain any transitive partial dependencies, it will be in 3NF.
  • The amount of duplicate data is decreased using 3NF. Additionally, it is employed to ensure data integrity.
  • If there is no transitive dependency for non-prime attributes, then the relation must be in third normal form.
What is Transitive Dependency?

A transitive dependency, as used in database management systems (DBMS), is a relationship between three or more attributes in a table such that if attribute A depends on attribute B and attribute C depends on attribute B, then attribute A also depends on attribute C. This means that the value of attribute A can be determined indirectly by looking at the value of attribute C.

For instance,

Consider a table Employee_Info with the following attributes: Employee_ID, Employee_Name, Employee_Department, and Department_Location. This table has a transitive dependency between Employee_Department and Department_Location because the location of a department can be determined indirectly through the department of an employee.

To remove this dependency, we can split the table into two tables: “Employee” and “Department“. The Employee table would have the following attributes: Employee_ID, Employee_Name, and Department_ID. The Department table would have the following attributes: Department_ID, Department_Name, and Department_Location.

This makes it easier to maintain the data and prevents data inconsistencies or redundancies that can occur with transitive dependencies.

Note: also read about Second Normal Form(2NF)

Follow Me

Please follow me to read my latest post on programming and technology if you like my post.

https://www.instagram.com/coderz.py/

https://www.facebook.com/coderz.py

Leave a Comment

Your email address will not be published. Required fields are marked *

Advertisement