Categories: DBMS

Third Normal Form(3NF)

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

Share
Published by
Rabecca Fatima

Recent Posts

What is object oriented design patterns

A design pattern is a reusable solution to a commonly occurring problem in software design. They…

4 months ago

Factory Method Design Pattern in OODP

Factory Method is a creational design pattern that deals with the object creation. It separates…

4 months ago

Find Intersection of Two Singly Linked Lists

You are given two singly linked lists that intersect at some node. Your task is…

10 months ago

Minimum Cost to Paint Houses with K Colors

A builder plans to construct N houses in a row, where each house can be…

10 months ago

Longest Absolute Path in File System Representation

Find the length of the longest absolute path to a file within the abstracted file…

10 months ago

Efficient Order Log Storage

You manage an e-commerce website and need to keep track of the last N order…

11 months ago