• Aucun résultat trouvé

La signification et le but des formes normales

2.4 Les dépendances entre données et les formes normales

2.4.1 La signification et le but des formes normales

Théorie des formes normales

La recherche dans le domaine relationnel a permis d'élaborer une véritable théorie des bases de données qui traite des aspects formels du modèle relationnel, en partie détachés du monde réel. Elle accorde une place importante à l'étude des formes normales (normal forms, en anglais). L'objectif consiste à détecter et à analyser les dépendances à l'intérieur des tables pour en éliminer les informations redondantes et les anomalies qui en résultent.

R È G L E 7

A# Désignation Matériau ARTICLE

Pièce GD

Sous-ensemble G Sous-ensemble D T7

T9 T11

Combi Bois Métal

A#_Composé A#_Composant NOMENCLATURE

T9 T11 T3 T4 T7

T7 T11 T11

ARTICLE

NOMENCLATURE

«Un article se compose de …»

«Un composant appartient à …»

mc c

Un exemple de nomenclature

T7

T9 T11

T3 T4

Redondance d'un attribut Quand un attribut

est-il redondant ?

Un attribut dans une table est redondant lorsque ses valeurs peuvent être éliminées de cette table sans perte d'informations.

À titre d'exemple, considérons une table, EMPLOYÉ DU DÉPARTEMENT, qui contient, pour chaque employé, le numéro d'employé, le nom, la rue, la ville, ainsi que le numéro et la description du département auquel il est affecté.

La description des départements est redondante

Dans la figure 2-16, le nom du département Finances apparaît pour chaque employé dans le département D6. Il en est de même pour les autres départements car, selon notre modèle de données, plusieurs employés peuvent travailler dans un même département. Puisque le nom d'un département apparaît plusieurs fois dans la table, l'attribut Description est donc redondant. Pour supprimer cette redondance, nous enregistrons une fois pour toutes la description de chaque département dans une table séparée au lieu de la répéter pour chaque employé.

Une table contenant des informations redondantes peut entraîner des anomalies de mutation. Admettons qu’un nouveau département de marketing D9 vient d’être créé. Nous constatons qu’il est impossible de le définir dans la table EMPLOYÉ DU DÉPARTEMENT à la figure 2-16. Il existe une anomalie d'insertion, car nous ne pouvons insérer aucune nouvelle ligne dans la table sans donner un numéro d'employé unique.

Nous parlons d'une anomalie de suppression lorsque nous perdons des informations involontairement. En supprimant tous les employés dans notre table EMPLOYÉ DU DÉPARTEMENT, nous

E# Nom Rue Ville D# Description

E19

avenue de la Gare rue Faucigny

perdons simultanément les numéros et les désignations des départements.

Problèmes de mise à jour des tables redondantes Enfin, il existe des anomalies de mise à jour. Si la description du

département D3 devient «Traitement de l'information» au lieu

«d'Informatique», nous devons appliquer ce changement de nom à l'ensemble des employés du département concerné. En d'autres termes, même si la modification ne porte que sur une seule pièce d'information, elle entraîne une mise à jour de la table EMPLOYÉ DU DÉPARTEMENT à plusieurs endroits différents. Cet inconvénient s'appelle anomalie de mise à jour.

Figure 2-17 Vue d’ensemble des formes normales et de leurs propriétés

Les dépendances engendrent des conflits

Les formes normales que nous abordons maintenant permettent d'éliminer les anomalies, et par là même les redondances qui en sont la cause. La figure 2-17 donne une vue d'ensemble des formes

Première forme normale (1FN)

Les valeurs d'attributs sont atomiques (pas de groupe répétitif) Tables non normalisées

Seconde forme normale (2FN)

Les attributs non clés dépendent de la totalité de la clé Troisième forme normale (3FN)

Forme normale Boyce-Codd (FNBC)

Seules les dépendances de la clé vers des attributs non clés sont admises Pas de dépendance transitive

Cinquième forme normale (5FN)

Dépendance de jointure triviale seulement

Quatrième forme normale (4FN)

Pas de dépendance multivaluée

normales et de leur signification. Nous y constatons notamment que chaque forme normale traite d’un cas particulier de dépendance et de la situation conflictuelle qu’elle engendre. Nous étudierons ces dépendances de manière approfondie dans les prochaines sections.

Comme le montre la figure 2-17, les formes normales limitent l’ensemble de tables admises en fournissant des règles de plus en plus strictes. Par exemple, une table ou un schéma de base de données en troisième forme normale doit satisfaire les critères des première et deuxième formes normales, et en plus, ne doit contenir aucune dépendance transitive d’une clé vers les attributs non clés.

L’intérêt pratique de la troisième forme normale

L'étude des formes normales nous montrera qu'elles ne revêtent pas toutes la même importance. Dans la pratique, on se limite généralement aux trois premières formes normales car les dépendances multivaluées et les dépendances de jointure se présentent moins fréquemment ; les exemples d’application sont rares. C’est pourquoi les quatrième et cinquième formes normales feront seulement l’objet d’une brève discussion.

La compréhension des formes normales permet de mieux saisir les règles de passage du modèle entité-association au schéma de base de données relationnelle, présentées dans les sections précédentes. En effet, comme nous le verrons plus tard, les critères des formes normales sont automatiquement satisfaits lorsqu'un modèle entité-association est bien construit et que les règles de passage sont correctement appliquées. En d'autres termes, nous pouvons nous dispenser de vérifier les formes normales à chaque étape de la conception si, partant d’un modèle entité-association bien conçu, nous appliquons les règles de passage 1 à 7 pour construire le schéma de base de données correspondant.