|< < 33 > >|

BCNF Decomposition

Given:

  • A non-BCNF table definition.

  • A set of FDs.

  • Decompose the table to improve the schema.

Schema design via BCNF decomposition

The general idea:
for each relation R in the schema: if R is not BCNF: Find a FD that causes R to be non-BCNF. Decompose(R, LHS(FD)) -> S, T Replace R in the schema by S and T.

This is exactly what we did, starting with BadAlbum, and ending with Artist, Album and Label.

|< < 33 > >|