Schema Design Vocabulary
5 exercises — practise the English vocabulary for schema design discussions: normalization normal forms, denormalization trade-offs, foreign key constraint actions, relationship cardinality, and the soft delete pattern.
0 / 5 completed
1 / 5
A DBA says in a schema review: "This table violates third normal form because the postcode column depends on the city column, not on the primary key." Which type of normalization violation is being described?
Normalization vocabulary — the three normal forms:
Option C is correct. A transitive dependency is when a non-key column (postcode) depends on another non-key column (city) rather than directly on the primary key. This is the defining violation of 3NF.
Key vocabulary for normalization discussions:
Option C is correct. A transitive dependency is when a non-key column (postcode) depends on another non-key column (city) rather than directly on the primary key. This is the defining violation of 3NF.
| Normal form | Violation type | Example violation |
|---|---|---|
| 1NF | Repeating groups; non-atomic values | tags = "sql,nosql,graph" in a single column |
| 2NF | Partial dependency on composite PK | order_item.product_name depends on product_id alone, not (order_id, product_id) |
| 3NF | Transitive dependency (non-key → non-key) | employees.department_name depends on department_id, not employee_id |
Key vocabulary for normalization discussions:
- Transitive dependency — A → B → C, where A is the PK; B depends on A; C depends on B but not directly on A
- Partial dependency — a non-key column depends on only part of a composite primary key
- Functional dependency — column B is functionally dependent on column A if each value of A determines exactly one value of B
- Decomposition — splitting a table into two or more tables to eliminate a dependency violation