Forme normale de Boyce-Codd
Introduction
La forme normale de Boyce-Codd permet d'éliminer les dépendances entre les attributs n'appartenant pas à une clé vers les parties de clé.
Définition : BCNF
Exemple : Employés
Soit la relation Personne :
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 :
Personne(#N°SS, #Region=>Region, Nom)
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.
Remarque : Simplicité
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é.
Attention : Non préservation des DF
Une décomposition en BCNF ne préserve pas toujours les DF.