










Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
These notes provide a complete and in-depth explanation of DBMS Normalization, carefully prepared for university exams, viva, and interview preparation. The PDF covers every concept from basics to advanced level, with clear explanations and solved examples. To ensure strong understanding, practice questions are included throughout the notes, along with self-practice exercises and exam-oriented questions at the end. The content is structured, easy to revise, and suitable for both beginners and intermediate learners. What’s included: • Detailed theory of Normalization (1NF → BCNF) • Functional Dependencies & Keys explained with examples • Attribute Closure & Minimal Cover (step-by-step) • Lossless Decomposition & Dependency Preservation • Solved problems + practice questions on each topic • Exam-oriented questions (2, 5 & 10 marks) Best for: B.Tech / BCA / MCA students • University exams • Viva • Interviews • Quick revision Format: PDF
Typology: Study notes
1 / 18
This page cannot be seen from the preview
Don't miss anything!











What’s inside:
Creator: Samiksha
Updated: 22 Jan 2026
Tip: Use this PDF for last-minute revision and for writing crisp answers in exams.
Table of Contents
(^1) 1. Normalization Overview & Goals
(^2) 2. Redundancy and Anomalies (Insert/Update/Delete)
(^3) 3. Functional Dependencies (FDs) — Types + Examples
(^4) 4. Keys and Prime Attributes (Super/Candidate/Primary)
(^5) 5. Attribute Closure (Xn) — Step-by-step method
(^6) 6. Minimal Cover / Canonical Cover (FD simplification)
(^7) 7. 1NF — Atomic values & removing multivalued attributes
(^8) 8. 2NF — Partial dependency (with composite keys)
(^9) 9. 3NF — Transitive dependency + 3NF test rule
(^10) 10. BCNF — Determinant must be a superkey
(^11) 11. Decomposition: Lossless Join Property
(^12) 12. Dependency Preservation
(^13) 13. Normalization Workflow (Algorithm)
(^14) 14. Solved Examples (Easy → Advanced)
(^15) 15. Practice Exercises (Topic-wise)
(^16) 16. University/GATE-style Questions + Quick Revision Sheet
2. Redundancy and Anomalies
Redundancy occurs when the same information is stored multiple times in one table. This increases memory usage and may create inconsistent values if updates are not applied everywhere.
STUDENT_COURSE (Roll, Name, Dept, Course, Teacher)
Roll Name Dept Course Teacher 1 Rahul CSE DBMS Amit 1 Rahul CSE OS Neha 2 Priya IT DBMS Amit 3 Aman CSE CN Riya
Exercise (Anomalies):
3. Functional Dependencies (FDs)
A Functional Dependency is written as X → Y. It means that for any two tuples, if they have the same value of X, then they must have the same value of Y. In simple words: X determines Y.
Example: Roll → Name If two rows have same Roll, they must have the same Name.
The left-hand side of an FD (X) is called the determinant. It determines the right-hand side attributes.
Exercise (FD validation): Assume Roll is unique but Name can repeat.
5. Attribute Closure (X n )
Attribute closure helps us determine all attributes functionally determined by a set X under a given set of FDs.
R(A,B,C,D) , FDs: A→B, B→C, C→D Find An.
Start An={A} A→B ⇒ {A,B} B→C ⇒ {A,B,C} C→D ⇒ {A,B,C,D} So A is a candidate key.
Exercise: R(A,B,C,D,E), FDs: A→B, B→C, AC→D, D→E. Find An and (AC)n.
6. Minimal Cover / Canonical Cover
A minimal cover is an equivalent set of functional dependencies that is simplified. It has single attributes on RHS, no extraneous attributes on LHS, and no redundant FDs.
FDs: A→BC, B→C, A→B Step 1: A→B, A→C, B→C, A→B (remove duplicate A→B) Now A→C is redundant because A→B and B→C imply A→C. Minimal cover = {A → B, B → C}
Exercise: Find minimal cover for FDs: AB→C, A→C, C→D.
8. Second Normal Form (2NF)
A relation is in 2NF if it is in 1NF and every non-prime attribute is fully functionally dependent on the whole candidate key.
Partial dependency occurs when a non-prime attribute depends on only part of a composite candidate key.
Example: STUDENT_COURSE(Roll,Course,Name,Dept), Key=(Roll,Course) FD: Roll→Name,Dept (depends only on part of key) ⇒ partial dependency ⇒ Not in 2NF.
Decompose into: STUDENT(Roll, Name, Dept) ENROLLMENT(Roll, Course)
Exercise: R(A,B,C,D), Key=(A,B), FDs: A→C, AB→D. Normalize to 2NF.
9. Third Normal Form (3NF)
A relation is in 3NF if it is in 2NF and does not have transitive dependency for non-prime attributes.
If A→B and B→C, then A→C. If B is not a key and C is non-prime, it violates 3NF.
EMP(Eid, Ename, DeptId, DeptName) FDs: Eid→DeptId, DeptId→DeptName So Eid→DeptName (transitive) ⇒ Not in 3NF.
Decompose: EMP(Eid,Ename,DeptId) and DEPT(DeptId,DeptName)
A relation R is in 3NF if for every FD X→A, either: n X is a superkey, OR n A is a prime attribute
Exercise: R(A,B,C,D), FDs: A→B, B→C, A→D. Key=A. Is it in 3NF?
11. Decomposition: Lossless Join Property
Decomposition splits one relation into smaller relations. A correct decomposition should be lossless (no spurious tuples on join).
Decomposition of R into R1 and R2 is lossless if: (R1 ∩ R2) → R1 OR (R1 ∩ R2) → R
R(A,B,C) decomposed into R1(A,B) and R2(B,C). Intersection = {B}. If B→A or B→C, then lossless.
Exercise: R(A,B,C,D) → R1(A,B), R2(B,C), R3(C,D). Discuss lossless join.
12. Dependency Preservation
A decomposition is dependency preserving if we can enforce all original FDs by checking each decomposed relation separately, without performing a join.
Important: BCNF decomposition may sometimes lose dependency preservation. 3NF decomposition often preserves dependencies.
14. Solved Examples (Easy → Advanced)
R(StudID, Name, Phones) where Phones has multiple numbers. Convert to 1NF: R1(StudID,Name,Phone) with one phone per row.
R(Roll, Course, Name, Dept), Key=(Roll,Course) FD: Roll→Name,Dept (partial dependency). Decompose: STUDENT(Roll,Name,Dept) and ENROLL(Roll,Course).
R(Eid, Ename, DeptId, DeptName, DeptLoc) FDs: Eid→Ename,DeptId ; DeptId→DeptName,DeptLoc Transitive: Eid→DeptName,DeptLoc ⇒ Not 3NF Decompose: EMP(Eid,Ename,DeptId) + DEPT(DeptId,DeptName,DeptLoc).
R(A,B,C) with FDs: A→B, B→C Key = A. BCNF violation: B→C (B not superkey). Decompose: R1(B,C) and R2(A,B).
R(Student,Course,Teacher), FDs: SC→T, T→C 3NF satisfied but BCNF violated because T not superkey. Decompose: (Teacher,Course) and (Student,Teacher).
15. Practice Exercises (Topic-wise)
Set A: Keys + Closure
Set B: Normal Forms
Set C: Lossless Join & Dependency Preservation