Normalisation
- Reduce the data redundancy
- To deal with the DML anomalies
1. Identify Functional Dependency
Rules
- Reflexive rule
Y is a subset of X the X determines Y (Y depended
functionally on X)
- Augmentation Rule
If X determines Y then, XC determines YC
- Transitivity Rule
If X determines Y, Y determines Z, then X
determines Z
Types:
1. Non-Trivial Functional Dependency
If X determines Y, & Y is not the subset of X
2. Trivial Functional Dependency
If X determines Y, & Y is the subset of X
Steps to follow
1. Identify the FDs
2. First Normal Form (All columns should’ve
atomic value)
Don’t separate tables, just scatter the rows
3. Second Normal Form
It has to be in the First Normal Form
Remove Partial Functional Dependency
Project : Proj ID, Proj Name, Duration
Emp : Emp ID, Emp Name, Gender, Zipcode
Emp_Proj : Emp ID, Proj ID
4. Third Normal Form
Should have first + second, remove
Transitive
5. BCNF (Boycee Codd Normal Form)
- For all non-trivial FD, if X determines Y
then X has to be a superkey/primary Key