Practise vocabulary for database normalisation: 1NF, 2NF, 3NF, BCNF, and when to denormalise for performance.
0 / 5 completed
1 / 5
A table is in ___ Normal Form (1NF) when all columns contain ___ values and there are no repeating groups.
1NF requires each column to contain only atomic (indivisible) values — no arrays, no comma-separated lists in a single cell, no repeating column groups. Each row must be uniquely identifiable.
2 / 5
A table is in 2NF when it is in 1NF and every non-key attribute is ___ on the entire primary key, not just part of it.
2NF eliminates partial dependencies — non-key attributes must depend on the whole composite primary key, not just one part. Splitting out partially dependent columns into separate tables achieves 2NF.
3 / 5
A table is in 3NF when it is in 2NF and has no ___ dependencies — non-key attributes must not depend on other non-key attributes.
3NF eliminates transitive dependencies: A → B → C where B is a non-key attribute. Move B and C into a separate table to achieve 3NF. This reduces update anomalies.
4 / 5
___ is the deliberate introduction of redundancy into a schema to improve ___ performance, accepting the trade-off of update complexity.
Denormalisation adds redundant data (e.g., storing a computed total in the row) to avoid expensive JOINs. It trades write complexity (maintaining redundancy) for read performance — justified in read-heavy analytics schemas.
5 / 5
'This table has an update anomaly' means that updating one record requires ___ updates to avoid inconsistency.
An update anomaly occurs when the same information appears in multiple rows — updating one copy without updating all copies leaves the database in an inconsistent state. Normalisation eliminates update anomalies by removing redundancy.