First Normal Form

In this lesson, we will take a look at first normal form with some examples.

We'll cover the following

First normal form (1NF)

First normal form (1NF) states that the domain of an attribute must include only atomic (simple, indivisible) values and that the value of any attribute in a tuple must be a single value from the domain of that attribute. Hence, 1NF disallows having a set of values, a tuple of values, or a combination of both as an attribute value for a single tuple. The only attribute values permitted by 1NF are single atomic (or indivisible) values. In other words, if a relation contains a multi-valued attribute, it violates 1NF.

To make things more clear, let’s consider the following examples.

Example 1

STUDENT Relation

Roll_No Name Course
101 Micheal Databases, Operating Systems
102 Huber Computer Networks, Data Structures

The STUDENT relation is not in 1NF because of the multi-valued attribute Course. To convert this table into 1NF, we must make sure that the values for the Course attribute are atomic. This can be seen below

Roll_No Name Course
101 Micheal Databases
101 Micheal Operating Systems
102 Huber Computer Networks
102 Huber Data Structures

Now this table is in 1NF.

Example 2

STUDENT Relation

Roll_No Name Phone
101 Felix (123) 456–7890
102 Giorno (456) 686–7821, (789) 316–9880
103 Tom NULL

Again we can see that the second student has two phone numbers in a single tuple which violates 1NF. The table can be seen in the first normal form below:

Roll_No Name Phone
101 Felix (123) 456–7890
102 Giorno (456) 686–7821
102 Giorno (789) 316–9880
103 Tom NULL

In the next lesson, we will look at how the second normal form reduces data redundancy.

Get hands-on with 1400+ tech skills courses.