Better Normalisation

Part 1 Boyce-Codd

What do we do if there are a more than 1 possible PK

Candidate key - a potental combination of cols that could make a primary key

Determinant - a col where other cols are functionally dependent

2NF - every non-PK is functionally dependent on any Candidate key

3NF - no non-PK attribute is transitively dependent on any candidate key.

BCNF - every determinant is a candidate key

Part 2 Fourth Normal Form

Basically when you have two values like manager and staff, where there can be any combination of them

Issue: data redundancy

Determinacy diagram

Part 3 Fifth Normal Form

Goal: when you are re-joining the tables, there is not an excess in rows

Part 4 Denormalisation

Normalisation slows down query processing

Denormalisation is we are not so pushy with the normalisation rules

Typically combine 1 to 1 relationships i.e. username and userID