Normalization is the process of organizing the columns and tables of a relational database to reduce data redundancy and eliminate undesirable anomalies (insertion, update, deletion). It was introduced by E. F. Codd (the father of the relational model) in 1970 and refined through a series of normal forms. For BCS, Bank IT, and IT-officer exams, normalization is one of the highest-yield DBMS topics: expect direct definition questions, "which normal form is this?" questions, functional-dependency reasoning, and identification of anomalies.
This lesson builds the topic from first principles: functional dependencies and keys first, then each normal form (1NF, 2NF, 3NF, BCNF) with the exact rule, the intuition, and full worked decompositions.
Learning objectives
- Explain why we normalize and describe the three anomalies (insert, update, delete).
- Define a functional dependency (FD) and classify FDs as full, partial, or transitive.
- Distinguish super key, candidate key, primary key, prime attribute, non-prime attribute.
- State the precise rule for 1NF, 2NF, 3NF, and BCNF and decide whether a relation satisfies each.
- Decompose an un-normalized relation step by step up to BCNF.
- Recognize the trade-offs: lossless-join, dependency preservation, and controlled denormalization.