Skip navigation

Boyce-Codd normálforma (BCNF)

Definíció

Egy relációséma BCNF-ben van, ha bármely nemtriviális L→B függés esetén L szuperkulcs.

A séma nincs BCNF-ben, ha van benne olyan nemtriviális függés, amelynek bal oldalán nem szuperkulcs áll. 

Ha a séma nincs BCNF-ben, akkor a táblában redundancia léphet fel. Tegyük fel ugyanis, hogy L→B és L nem szuperkulcs Ezért a táblában több olyan sor lehet, amelyek L-en megegyeznek, és a függőség miatt szükségképpen B-n is megegyeznek, ami a B-értékek redundáns tárolását eredményezi.

BCNF-re hozás

A sémát felbontjuk Heath tétele szerint, a normálformát sértő függőség mentén.

Ha L→B teljesen nemtriviális függés és L nem szuperkulcs, akkor a sémát felbontjuk az L→B függőség szerint (itt B legyen az összes L-től függő attribútum halmaza). Legyen C = A – (L U B), ekkor az R(A) sémát az R1 (C U L) és R2 (L U B) sémákkal helyettesítjük. Heath tétele alapján a felbontás hűséges.