DBMS Module 3 Study Notes
DBMS Module 3 Study Notes
Introduction to Normalization
Normalization is a formal process for analyzing relation schemas based on their
Functional Dependencies (FDs) and primary keys. Its main goals are:
1. Minimizing redundancy.
2. Minimizing insertion, deletion, and update anomalies.
Functional Dependencies
A formal tool for analyzing relational schemas.
● Definition: A functional dependency (FD), denoted by X→Y, between sets of
attributes X and Y (subsets of a relation schema R) means that for any two tuples
t1and t2in any legal relation state of R, if t1[X]=t2[X], then t1[Y]=t2[Y].
● Meaning: The values of X uniquely determine the values of Y. Y is functionally
dependent on X.
● Relation states satisfying FDs are called legal relation states.
● FDs are derived from the real-world semantics of the data.
● A single counterexample in a relation state is sufficient to disprove an FD.
● Examples (from EMP_PROJ schema):
○ Ssn → Ename (Employee's SSN determines their name)
○ Pnumber → {Pname, Plocation} (Project number determines project name
and location)
○ {Ssn, Pnumber} → Hours (Employee's SSN and project number determine
hours worked on that project)