1. This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn More.

3rd normal form

The 3rd level of normalization or the 3rd normal form requires that each column in a database table must be:
1. dependent on the table's primary key
2. independent on all other non-key columns in the table.

Consider the following database table design for bank products:

products table
column
product_id primary key
description
category
risk_level
Let's assume that a bank is using such a table to store information about the bank's products. Each product will be part of a category of products and each category will have a risk level associated with the category.

It is quite obvious that both the product_description and the product_category fields are tied to the product_id field while the risk_level field is tied to the product_category field. In order to normalize the table to it's 3rd normal form, the resulting design follows:

products table
column
product_id primary key
description
category_id foreign key
categories table
column
category_id primary key
risk level
The normalization results in 2 tables. The product category table is tied back to the product table through the use of a foreign key - in this case, the category_id field.


See also: 1st normal form and 2nd normal form

Share This Page