Database Normalization Guidelines

Database Normalization Guidelines
Normalization is the process of organizing data in a database; it's the first step in the
design process. This includes creating tables and establishing relationships between
those tables according to principals designed both to protect the data and to make the
database more flexible by eliminating redundancy and inconsistent dependencies.
Redundant data wastes disk space and creates maintenance problems. If data that
exists in more than one place must be changed, the data must be changed in exactly the
same way in all locations. A customer phone number change is much easier to
implement if that data is stored only in the Customers table and nowhere else in the
database.
There are different levels of database normalization. These are generally called the First
Normal Form, Second Normal Form and Third Normal Form.
First Normal Form Guidelines

Take out repeating groups in individual tables.

Make a separate table for each set of related data.

Allow a primary key to identify each set of related data.
Second Normal Form

Make separate tables for sets of values that apply to multiple records.

Relate these separate tables with a foreign key.
A record should not depend on anything other than the table’s primary key (or
composite key). For example, consider a customer’s address. The address
may be needed by the Customers table, but also by the Orders, Shipping,
Invoices, Accounts Receivable, and Collections tables. Instead of storing the
customer’s address as a separate entry in each of these tables, store it in
one place, either in the Customers table (or possibly in a separate Addresses
table).
Third Normal Form

Take out fields that do not depend on the key.
Normally, any time the contents of a group of fields may apply to more than a
single record in the table, consider placing those fields in a separate table.
Work out the normalization of the following table .
Exrcice 1:
(
PATIENT PatientNo, Name,
(
DOB,Address, PrescriptionNo,Drug,Date,Dosage,DoctorNo,Doctor,Secre
tary
))
Exercice 2:
(
CLIENT ClientNo , Name,Location, ManagerNo, Manager_name,
(
Manager_location, ContractNo, Estimated_cost,Completion_date,
(StaffNo,Staff_name,Staff_location
))
Exercice3 :
Exercice 4
Is the following table in 2NF form ? if not make it 2NF
Exercice 5
Is the following table in 2NF form ? if not make it 2NF
Is the following table in 3NF form ? if not make it 3NF
Exercice 6
Is the following table in 1NF, 2NF, 3NF form , if not work them out.