Database Normalization

Database Normalization

 

 

Is your database normalized?

or

Is that inBCNF?

 

 

What is Normalization?

Normalization is the process of efficiently organizing data in a database.

Two goals of the normalization process are optimally design a database to:

1) To reduce redundant data

2) Data dependencies make sense

Without normalization, database systems can be inaccurate, slow, and inefficient and they might not produce the data you expect.

 

Benefits of Normalization
Normalization provides numerous benefits to a database. Some of the major benefits include the following :

  • Greater overall database organization
  • Reduction of redundant data
  • Data consistency within the database
  • A much more flexible database design
  • A better handle on database security

database normalization 1nf 2nf bcnf

The Normal Forms

First Normal Form
A Relation is said to be in 1NF if the values in the domain of each attribute of relation are atomic.Each cell of the table must have single value.No two rows in a table may be identical.

 

Second Normal Form

A relation R is said to be in 2NF if it is in 1NF and there should not be any partial dependency. Here all the non key attributes are dependent on the key alone. No attribute is depend upon a part of the key. Any relation having a key with single attribute is in 2NF.

 

Third Normal Form

A relation R is in 3NF if it is in 2NF and has no transitive dependency.Here all the non-key attributes are depend on the key alone.There should not be any dependency among the non-key attributes.

 

Boyce – Codd Normal Form BCNF

A relation R is in BCNF if every determinant is a candidate key.

Problem with BCNF: Given a relation R , Functional Dependency F, BCNF may or may not preserve all given functional dependencies.

 

Fourth Normal From

A Relation is in 4NF if it is in BCNF and has no multi valued dependency.

 

Fifth Normal Form

It deals with join dependency. A relation R is in 5NF if it has no join dependency.
Loss less Join Dependency : When we join the decomposed relation then we must get the original relation without any loss.