Professional Documents
Culture Documents
Chapter 6:
Normalization of Database Tables
Chitu Okoli
Associate Professor in Business Technology Management
John Molson School of Business, Concordia University, Montral
ch1: Introduction
Weeks 2-6: Database design
ch3: Relational model
ch4: ER modeling
ch6: Normalization
ERD modeling exercise
ch5: Advanced data modeling
Week 7: Midterm exam
Weeks 8-10: Database programming
ch7: Intro to SQL
ch8: Advanced SQL
SQL exercises
Weeks 11-13: Database management
ch2,12,14: Data models
ch13: Business intelligence and data warehousing
ch9,15,16: Selected managerial topics
Review of Chapter 6:
Normalization of Database Tables
What are dependencies between attributes in a table,
and how is tracing of dependencies used to
normalize tables?
What are the normal forms in a relational database?
Why and when would you consider denormalizing
tables in a relational database?
Understanding dependencies to be
able to properly normalize tables
Functional dependency
Functional dependency: AB or (A,B)(C,D)
B is functionally dependent on A means that if you know A, then there
you definitely know the correct value for B
E.g. Project.ID Project.Name
Also called determination: A determines B
Multivalued dependency
Functional dependency: AB
Multivalued dependency: AB,C
A determines B and A determines C, but B and C have
nothing to do with each other
E.g. Project.ID Project.EmployeeID, Project.Location
Since a project might have multiple locations and multiple
employees work on a project, the EmployeeID and Location in
the same row might have nothing to do with each other
Dependency diagram:
Basic tool for normalization
Depicts all dependencies found in a given table structure
Gives birds-eye view of all relationships among tables
attributes
Makes it less likely that you will overlook an important
dependency
3NF vs BCNF
Denormalization
Denormalization
Although normalization is important, processing speed
and efficiency are also important in database design
Summary of Chapter 6:
Normalization of Database Tables
Correctly identifying dependencies from the very
beginning is critical to properly normalize tables.
The most important normal forms are 1NF, 2NF, 3NF,
BCNF and 4NF.
Although normalization to 4NF is usually important, a
designer might sometimes want to denormalize a
table to a lower normal form.
Sources
Most of the slides are adapted from
Database Systems: Design, Implementation and
Management
by Carlos Coronel and Steven Morris. 11th edition
(2015) published by Cengage Learning. ISBN 13:
978-1-285-19614-5
Other sources are noted on the slides themselves