Normalization With Examples
Normalization With Examples
with Examples
The International University of Management
By: P. Mubanga
Normalization 1NF, 2NF, 3NF & BCNF with Examples
Objectives
In this class, you will learn-
• First Normal Form (1NF)
• Second Normal Form (2NF)
• Third Normal Form (3NF)
Normalization 1NF, 2NF, 3NF & BCNF with Examples
What is Normalization?
• NORMALIZATION is a database design technique that organizes tables
in a manner that reduces redundancy and dependency of data.
• Normalization divides larger tables into smaller tables and links them
using relationships.
• The purpose of Normalization is to eliminate redundant (useless) data
and ensure data is stored logically.
Normalization 1NF, 2NF, 3NF & BCNF with Examples
Database Normal Forms
• The Theory of Data Normalization in SQL is still being developed
further. However, in most practical applications, normalization
achieves its best in 3rd Normal Form.
• Database Normalization Example:
Database Normalization Example:
Assume, a video library maintains a database of movies rented out.
Without any normalization, all information is stored in one table as
shown below.
Normalization 1NF
1NF (First Normal Form) Rules
• Each table cell should contain a single value.
• Each record needs to be unique.
The above table in 1NF-
Database Keys
Before we proceed let's understand a few things --
What is a KEY?
• A KEY is a value used to identify a record in a table uniquely. A KEY
could be a single column or combination of multiple columns
What is a Primary Key?
• A primary is a single column value used to identify a database record
uniquely.
It has following attributes
• A primary key cannot be NULL
• A primary key value must be unique
• The primary key values should rarely be changed
• The primary key must be given a value when a new record is inserted
Database Keys
What is Composite Key?
• A composite key is a primary key composed of multiple columns used
to identify a record uniquely
• In our database, we have two people with the same name Robert
Phil, but they live in different places.
• Hence, we require both Full Name and Address to identify a record
uniquely. That is a composite key.
Normalization 2NF
Let's move into second normal form 2NF
2NF (Second Normal Form) Rules
• Rule 1- Be in 1NF
• Rule 2- Single Column Primary Key
It is clear that we can't move forward to make our simple database in
2nd Normalization form unless we partition the table above.
Normalization 2NF
• We have divided our 1NF table into two tables viz. Table 1 and Table2. Table 1
contains member information. Table 2 contains information on movies rented.
• We have introduced a new column called Membership_id which is the primary
key for table 1. Records can be uniquely identified in Table 1 using membership
id
Database Keys
Database - Foreign Key
In Table 2, Membership_ID is the Foreign Key
Foreign Key references the primary key of another Table! It helps
connect your Tables
• A foreign key can have a different name from its primary key
• It ensures rows in one table have corresponding rows in another
• Unlike the Primary key, they do not have to be unique. Most often
they aren't
• Foreign keys can be null even though primary keys can not
Normalization 2NF
Database Keys
Database Keys
Why do you need a foreign key?
• Suppose, a novice inserts a record in Table B such as
• You will only be able to insert values into your foreign key that exist in
the unique key in the parent table. This helps in referential integrity.
Transitive Functional Dependencies
• The above problem can be overcome by declaring membership id
from Table2 as foreign key of membership id from Table1
• Now, if somebody tries to insert a value in the membership id field
that does not exist in the parent table, an error will be shown!