Forme normale de Boyce-Codd

DéfinitionBCNF

Une relation est en BCNF[1] si elle est en 3NF[2] et si les seules DFE[3] existantes sont celles pour lesquelles une clé candidate détermine un attribut.

ExempleEmployés

Soit la relation Personne :

1
Personne(#N°SS, #Pays, Nom, Région) 

Soit les DF suivantes sur cette relation :

  • N°SS,Pays→Nom

  • N°SS,Pays→Région

  • Région→Pays

Il existe une DFE qui n'est pas issue d'une clé et qui détermine un attribut appartenant à une clé. Cette relation est en 3NF, mais pas en BCNF (car en BCNF toutes les DFE sont issues d'une clé).

Pour avoir un schéma relationnel en BCNF, il faut décomposer Personne :

1
Personne(#N°SS, #Region=>Region, Nom) 
2
Region(#Region, Pays)

Remarquons que les DF n'ont pas été préservées par la décomposition puisque N°SS et Pays ne déterminent plus Région.

FondamentalSimplicité

La BCNF est la forme normale la plus facile à appréhender intuitivement et formellement, puisque les seules DFE existantes sont de la forme K→A où K est une clé.

MéthodeÀ retenir

Pour prouver qu'une BD n'est pas redondante, on pourra se contenter de vérifier qu'elle est en BCNF.

AttentionNon préservation des DF

Une décomposition en BCNF ne préserve pas toujours les DF.