Normalisation: 3NF and BCNF
50 min · Advanced
3NF and BCNF finish the normalisation story: after removing partial dependencies (2NF), they remove dependencies between non-key columns, so every fact in a table is about the key, the whole key and nothing but the key.
Topics in this lesson
- Transitive dependencies and 3NF
- BCNF and how it differs from 3NF
- Lossless join and dependency preservation
- Denormalisation and when it is used
- Worked decomposition example
Interview questions this lesson answers
- What is 3NF?
- What is a transitive dependency?
- How do you remove a transitive dependency?
- What is BCNF?
- What is the difference between 3NF and BCNF?
- Give an example of a table in 3NF but not BCNF.
- When can a 3NF table fail BCNF?
- Why not always normalise to BCNF?
- What is a lossless-join decomposition?
- What are spurious tuples?
Sign in free to continue this lesson
Create a free account to read every lesson, practise with the exercises and keep track of your progress.