# Normal Forms Shortcuts for Gate Students

## Normal Forms Shortcuts for Gate Students

I am trying to give you the normal forms shortcuts for Gate students. To identify that a relation is in which normal form, the first step is to Find all the Candidate Keys of the relation.

#### First Normal Form (1NF) :

It doesn’t have multivalued attributes.

 RollNo Name Subject Marks 00001 AAAAA Maths,C++ ???? Error in 3rd Column (multivalue), as we can’t assign marks for both subjects in one column.

Solution :

 RollNo Name Subject Marks 00001 AAAAA Maths 89 00001 AAAAA C++ 98

#### Second Normal Form (2NF) :

Check right hand side  of FD A → B ,

1. If B is a fullynonkey, then A must be either fullynonkey OR fully key. (i.e. it should not be partial)
2. If right hand side B is a key or part of key, then its okay – no need to check.
3. If its Nonkey → Nonkey, its fine – no need to check. Just check (1) is sufficient.

#### Third Normal Form (3NF) :

Check right hand side of FD A → B,

1. If B is fullynonkey, then left hand side must be either superkey or part of superkey.
2. Nonkey → Nonkey is not allowed in 3NF
3. Key or part of Key → Nonkey is allowed

#### Boyce-Codd Normal Form (BCNF) :

Left hand side A → B must be a superkey, whatever is Right Hand Side.

### Decomposition in All Normal Form Violation

If A → B is violating normal form in R(ABCD), then decompose into

• R1 = AB
• R2 = BCD

### Some Notes about Normal Forms – Useful for Gate Students

 1NF 2NF 3NF BCNF Redundancy Hgh <1NF <2NF 0% if it doesn’t contain MVD, Otherwise, it may contain Redundancy Lossless Join Always Always Always Always Dependency Preserving Always Always Always Some relation may not possible to decompose in BCNF by preserving dependency
 4NF 0% redundancy Yes Lossless Yes Dependency Preserving may or may not be Problem may exist ?? Join Dependency