L’objectif de la forme normale de Boyce-Codd est d’améliorer l’intégrité des données en organisant les colonnes et les tables d’une base de données relationnelle afin de réaliser la normalisation de la base de données. La normalisation de la base de données se produit lorsqu’il existe des relations établies entre les tables et lorsque les tables ont des règles définies pour rendre la base de données plus flexible et préserver les données.

Gros plan de côté d’une femme noire blonde d’une vingtaine d’années en train de réaliser son projet de développement de logiciels. Elle est assise devant un ordinateur de bureau et sirote un café tout en travaillant sur un ordinateur.

Les objectifs de la normalisation des bases de données sont d’éliminer les données redondantes et de s’assurer que les dépendances des données ont un sens. Une base de données est normalisée lorsque les mêmes données ne sont pas stockées dans plus d’une table et lorsque seules les données connexes sont stockées dans une table.

Origine de la forme normale de Boyce-Codd

Le respect d’une série de directives garantit la normalisation des bases de données. Ces directives sont appelées formes normales et sont numérotées de un à cinq. Une base de données relationnelle est décrite comme normalisée si elle respecte les trois premières formes : 1NF, 2NF et 3NF.

BCNF a été créé comme une extension de la troisième forme normale, ou 3NF, en 1974 par Raymond Boyce et Edgar Codd. Ces hommes travaillaient à la création de schémas de bases de données qui minimisaient les redondances dans le but de réduire le temps de calcul. La troisième forme normale supprime les colonnes qui ne dépendent pas de la clé primaire, en plus de respecter les directives des première et deuxième formes normales. BCNF, parfois appelée 3.5NF, répond à toutes les exigences de 3NF et exige que les clés candidates ne dépendent pas des autres attributs d’une table.

Au moment de la création de BCNF, Boyce était l’un des principaux développeurs du Structured English Query Language, plus tard normalisé sous le nom de SQL, qui a amélioré la récupération des données en utilisant le modèle relationnel de Codd. Dans ce modèle, Codd postule que la complexité structurelle des bases de données peut être réduite, ce qui signifie que les requêtes peuvent être plus puissantes et plus flexibles.

Grâce à ses connaissances sur les bases de données relationnelles, Codd a défini les directives 1NF, 2NF et 3NF. Il s’est associé à Boyce pour définir BCNF.

Clés candidates et BCNF

Une clé candidate est une colonne ou une combinaison de colonnes dans une table qui constitue une clé unique dans la base de données. La combinaison d’attributs identifie un enregistrement de la base de données sans faire référence à d’autres données. Chaque table peut contenir plusieurs clés candidates, chacune d’entre elles pouvant être qualifiée de clé primaire. Une table ne contient qu’une seule clé primaire.

Les clés candidates doivent être uniques.

Une relation est en BCNF si chaque déterminant est une clé candidate. Considérons une table de base de données qui stocke des informations sur les employés et possède les attributs , , et .</p> <p>Dans cette table, le champ <Employee_Id> détermine le prénom et le nom. De même, le tuple (<Prénom>, <Dernier_nom>) détermine <Employee_id>. </p>