MR:3 formes normales

Un article de WikiTuto.

Jump to: navigation, search

Les 3 formes normales du modèle relationnel

Sommaire

1er forme normale

Une relation est normalisée en première forme normale si :

  1. elle possède une clé identifiant de manière unique et stable chaque ligne
  2. chaque attribut est monovalué (ne peut avoir qu’une seule valeur par ligne)
  3. aucun attribut n’est décomposable en plusieurs attributs significatifs
  • Contre-exemple :
EMPLOYE ( Nom, Prénom, Enfants, Diplômes)

Cette relation n’est pas en première forme normale

Un employé peut avoir plusieurs enfants et plusieurs diplômes. En outre, ces attributs sont décomposables : diplôme est décomposable en Nature et Année, et Enfants est décomposable en Prénom et Année de Naissance.

2ème forme normale

Une relation R est en deuxième forme normale si et seulement si :

  1. elle est en 1FN
  2. et tout attribut non clé est totalement dépendant de toute la clé.

Autrement dit, aucun des attributs ne dépend que d’une partie de la clé.
La 2FN n'est à vérifier que pour les relations ayant une clé composée. Une relation en 1FN n'ayant qu'un seul attribut clé est toujours en 2FN

  • Contre-exemple :
Image:DF-Forme-normal-contre-exe2.jpg

Cette relation est en première forme normale (existence d’une clé valide et aucun attribut n’est décomposable)
MAIS elle n’est pas en 2° forme normale car on a DésignationProd ne dépend pas de toute la clé mais seulement de référenceProd:

RéférenceProd Image:Fleche.jpg DésignationProd

pour connaître l’attribut désignationProd, on n’a pas besoin de connaître le numéro de commande.

3ème forme normale

Une relation est en 3° forme normale si et seulement si :

  1. elle est en 2° forme normale
  2. et tout attribut doit dépendre directement de la clé, c'est-à-dire qu’aucun attribut ne doit dépendre de la clé par transitivité.

Autrement dit, aucun attribut ne doit dépendre d’un autre attribut non clé.

  • Contre-exemple :

CLIENT(Num_client, Nom_client, code_categ, nom_categ) Cette relation n’est pas en 3FN car num_client Image:Fleche.jpg nom_categ n’est pas une dépendance directe.

En effet, on a aussi num_client Image:Fleche.jpg num_categ Image:Fleche.jpg nom_categ

Application des règles

Si l’une des 3 règles n’est pas vérifiée, cela indique une erreur dans le modèle relationnel et il faut alors modifier pour que les 3 règles soient vérifiées pour toutes les relations.
On vérifie les règles dans l’ordre. Si la première forme normale n’est pas respectée, pas la peine de vérifier la 2FN. Et si la 2FN n’est pas vérifiée, inutile de vérifier la 3FN.

Résumé

Modèle normalisé = relations avec:

  • une clé, qui permet de distinguer chaque occurrence
  • des attributs élémentaires (1FN)
  • en dépendance de TOUTE la clé (2FN),
  • et RIEN QUE de la clé (3FN)

On parle aussi de normalisation pour un MCD. Un MCD qui donne un MR normalisé est qualifié aussi de normalisé.

Voir aussi


Source S. Laporte

Boîte à outils
Annuaire gratuitCe site est listé dans la catégorie Informatique : Aide et astuces en informatique Annuaire