Unit 3 - Relational Database Design
Unit 3 - Relational Database Design
a. Normalization is a database design technique that organizes data into tables to reduce
redundancy and dependency anomalies. It involves breaking down a large table into
tables according to rules designed both to protect the data and to make the database
Normalization is a very essential technique in database design, outlined below are a few
the database engine can quickly find and get the data that is needed.
Enhanced data flexibility: Normalized databases are more adaptive to changes since
individual tables can be modified without impacting the overall database structure.
1. 1st Normal Form does not allow multi valued attribute or composite attribute
and their combinations. It states that domain of the attribute includes only
The above schema is already in 1st Normal Form as it contains atomic data,
BOOKS
Book_ID (Primary Key)
Title
Author
Genre
Publisher
Publication_Year
ISBN
Price
2. 2nd Normal Form: For this schema to conform to 2NF, we examine the
different characteristics.
BOOKS
PUBLISHERS
Book_ID Primary Key
Book_ID Foreign key
Title
Publisher
Genre
Publication_Year
ISBN
Price
Authors
Book_ID Foreign Key
Author_Name
4
Unit 3: Relational Database Design
3. 3NF: to allow our schema to conform to 3NF we remove transitive
BOOKS
Book_ID Authors
Primary Key
Book_ID Foreign Key
Title
Author_Name
Genre
ISBN
BOOKPUBLISHERS
PUBLISHERS
Publisher_ID Primary Key
Book_ID
Publisher_Name Foreign Key
Publication_Year
Price
BOOKS BOOKDETAILS
Book_ID Primary Key Book_ID Primary Key
Title ISBN
Genre Price
BOOKAUTHORS AUTHORS
Book_ID Primary Key Author_ID Primary Key
Author_ID Author_Name
5
Unit 3: Relational Database Design
PUBLISHERS BOOKPUBLISHERS
Publisher_ID Primary Key Book_ID Primary Key
Publisher_Name Publisher_ID
Publication_Year
c. 1NF to 2NF ; we addressed partial dependencies at this stage in that some attributes
were dependent only on a part of the primary key.
Higher Normal forms reduce the risks of data inconsistencies and anomalies
Data is easier to manipulate, as changes in one table does not affect the entire
database.
the schema.
Higher normal forms can lead to complex database designs with multiple tables.
Joining multiple tables can sometimes impact query performance especially complex
queries.
Reference:
1. Vidhya, V., Jeyaram, G., & Ishwarya, K. (2016). Database management systems. Alpha
Science International.