Boyce and Codd form (BCNF):
- When a relation has more than one candidate key, anomalies may result even though the relation is in 3NF.
- 3NF does not deal satisfactorily with the case of a relation with overlapping candidate keys
- BCNF is based on the concept of a determinant.
- A determinant is any attribute on which some other attribute is fully functionally dependent. .
- A relation is in BCNF is, and only if, every determinant is a candidate key.
Examples: Consider a database table that stores employee information and has the attributes employee_id, first_name, last_name title. In this table, the field employee_id determines first_name and last_name. Similarly, the tuple ( first_name, last_name ) determines employee_id.