1st normal form

The 1st level of normalization or the 1st normal form deals with data redundancy within each table record. In order to determine if a database table is in the 1st normal form, traverse the table design from column to column within the same row and check if the row is free from redundant data.

Consider the following database table design for bank customers:

customers table
column
cust_id primary key
lastname
firstname
ssn
product_1
product_2
product_3

Let's assume that a bank is using such a table to store information about a customer and the type of financial products that the customer has 'purchased' - e.g. credit card, checking account, savings account, etc.

It is quite obvious that there is redundant data in each row - i.e. the product information. Another deficiency is that the design assumes that each customer will have a maximum of 3 products. These problems can easily be removed by normalizing the table to it's 1st normal form. The resulting design will be as follows:

customers table
column
cust_id primary key
lastname
firstname
ssn

products table
column
product_id primary key
cust_id foreign key

The normalization results in 2 tables. The product table is tied back to the customer table through the use of a foreign key - in this case, the cust_id field.


See also: 2nd normal form and 3rd normal form

Advertising

Advertising:
Back
Top