First Normal form (INF)

By | January 26, 2010

First Normal Form (INF)

A table is said to be in a First Normal Form (1NF) if it satisfy the following conditions:-
1)If the columns of the table only contain atomic values (Single, indivisible).
2)Primary key is defined for the table
3)All the columns of the table are defined on the primary key.The first condition also implies that no column should contain the set of values. For example, suppose we have a table EmpDetailsTable Name :-EmpDetails
Primary Key:- EmpId

EmpId     EmpName              EmpRegdate         ExpertiseDomain
1                Raman                      23/04/2006                 eLearning
2               Vivek Johari               02/01/2006              {Banking, financial, eLearning}

Now, in the above table the column ExpertiseDomain contains a set of values for the EmpId 2. Therefore this table is not in the 1NF form. To make this table in the 1NF, we need to break this table into two tables, one contains the employee information EmpInfo (EmpId, EmpName, and EmpRegdate) and the other table contains the employee expertisedomain information EmpexpertDomain (EmpId, ExpertiseDomain). In both the tables, EmpId will be the primary key.

Table Name:- EmpInfo
Primary Key:- EmpId

EmpId     EmpName            EmpRegdate
1               Raman                   23/04/2006
2               Vivek Johari           02/01/2006

Table Name:- EmpexpertDomain
Primary Key:-( EmpId , ExpertiseDomain)

EmpId           ExpertiseDomain
1                         eLearning
2                         Banking
2                         financial
2                         eLearning

Now these tables is said to be in the 1NF since all the columns of these tables contains the atomic values and all the values of the columns are dependent on the primary keys.

Related Articles

13 thoughts on “First Normal form (INF)

  1. Anonymous

    the primary key of EmpexpertDomain table should be empid and expertisedomain as compositely.

    Thank you.

    1. admin Post author

      Thanks for your feedback. I have corrected the error.Keep visiting my articles. I am looking forward to your more comments. 🙂

  2. ashutosh

    Thanx alot sir your article is helping me for understanding SQL from depth !!!!


    Ashutosh Srivastava

  3. Vijila stay uniq

    Very nice article and interesting..

    I hav 1 doubt…Primary key has unique values..How in this table "EmpexpertDomain",Primary key column "Empid" has repeated value "2"??? in this case this column not considered to be Primary key,right?

    1. admin Post author

      Hi Vijila,
      Again thanks for your comments. As mention in the article, primary key is the combination of the two columns ( EmpId , ExpertiseDomain). So the single column Empid can contains duplicate value but the combination of these two columns do not contains same value for more than one rows.


Leave a Reply