Forme normale (bases de données relationnelles) - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Les différentes formes normales

1FN - première forme normale :
Relation dont tous les attributs :

  • contiennent une valeur atomique (les valeurs ne peuvent pas être divisées en plusieurs sous-valeurs dépendant également individuellement de la clé primaire)
  • contiennent des valeurs non répétitives (le cas contraire consiste à mettre une liste dans un seul attribut).
  • sont constants dans le temps (utiliser par exemple la date de naissance plutôt que l'âge).

Le non respect de deux premières conditions de la 1FN rend la recherche parmi les données plus lente parce qu'il faut analyser le contenu des attributs. La troisième condition quant à elle évite qu'on doive régulièrement mettre à jour les données.

2FN - deuxième forme normale
Respecte la deuxième forme normale, la relation respectant la première forme normale et dont :

Le non respect de la 2FN entraine une redondance des données qui encombrent alors inutilement la mémoire et l'espace disque.

3FN - troisième forme normale
Respecte la troisième forme normale, la relation respectant la seconde forme normale et dont :

  • Tout attribut ne composant pas un identifiant dépend directement d'un identifiant.

Le non respect de la 3FN peut également entrainer une redondance des données.

FNBC - forme normale de Boyce - Codd
Respecte la forme normale de Boyce-Codd, la relation respectant la troisième forme normale et dont :

  • tous les attributs non-clé ne sont pas source de dépendance fonctionnelle (DF) vers une partie de la clé

Le non respect de la 2FN, 3FN et la FNBC entraîne de la redondance. Une même information étant répétée un nombre considérable de fois.

4FN - quatrième forme normale
Pour toute relation de dimension n en forme normale de Boyce-Codd, les relations de dimension n-1 construites sur sa collection doivent avoir un sens. Il ne doit pas être possible de reconstituer les occurrences de la relation de dimension n par jointure de deux relations de dimension n-1. Cette normalisation conduit parfois à décomposer une relation complexe en deux relations plus simples.

5FN - cinquième forme normale
Pour toute relation de dimension n (avec n supérieur à 2) en quatrième forme normale, il ne doit pas être possible de retrouver l’ensemble de ses occurrences par jointure sur les occurrences des relations partielles prises deux à deux. Cette normalisation conduit parfois à décomposer une relation complexe en plusieurs relations plus simples.
Le non respect de la 5FN et 6FN entraîne de la perte de données et les informations manquent de précision.

FNDC - forme normale domaine clef
Une relation est en FNDC si et seulement si toutes les contraintes sont la conséquence logique des contraintes de domaines et des contraintes de clefs qui s'appliquent à la relation.

Pour se souvenir de l'ordre et des caractéristiques des trois premières formes normales, il suffit de se rappeler le serment que tous les témoins doivent prêter devant la justice : Je jure de dire la vérité, toute la vérité, rien d'autre que la vérité.
Ce qui donne : 1FN = La clé. 2FN = Toute la clé. 3FN = Rien que la clé.
La phrase originale étant : "The key, the whole key, nothing but the key" (Chris Date). Elle est empruntée à l'œuvre de Shakespeare.

Exemples de violation

(les * indiquent les attributs appartenant à la clé primaire)

1FN - première forme normale :

  • tout attribut contient une valeur atomique
CLIENT_ID* ...
Dupont Paris
Durand Marseille

L'attribut CLIENT_ID est composé de 2 attributs atomiques.

CLIENT_ID* NOM
1 Gérard Dupont
2 Léon Durand

L'attribut NOM est composé de 2 attributs atomiques.

  • tous les attributs sont non répétitifs
PRODUIT_ID* DESCRIPTION FOURNISSEURS
1 Téléviseur Sony, Sharp, LG

L'attribut FOURNISSEURS est une liste.

  • tous les attributs sont constants dans le temps.
CLIENT_ID* NOM PRENOM AGE
1 Dupont Gérard 35

L'attribut AGE n'est pas constant dans le temps.

2FN - deuxième forme normale

  • tous les attributs non-clés sont totalement dépendants fonctionnellement de la totalité de la clé primaire.
COMMANDE_ID* ARTICLE_ID* DESCRIPTION_ARTICLE
1 15 TV haute définition avec amplificateur dolby 5.1

L'attribut DESCRIPTION_ARTICLE ne dépend que d'une partie de la clef primaire.

3FN - troisième forme normale

  • tout attribut n'appartenant pas à une clé ne dépend pas d'un attribut non clé
COMMANDE_ID* CLIENT_ID NOM_CLIENT
1 1 Durand

L'attribut NOM_CLIENT dépend de CLIENT_ID.

FNBC - forme normale de Boyce - Codd

  • Si une entité ou une relation en troisième forme normale a une clé composée, aucune des propriétés élémentaires de cette clé ne doit être en dépendance fonctionnelle d’une autre propriété.
ENSEIGNANT_ID* MATIERE_ID* SALLE_ID*
DURAND MATHS 3A
DUPONT ANGLAIS 6A

Si Durand arrête d'enseigner les Mathématiques, on supprime la ligne et l'on perd la relation Matière-Salle.

Liens externes

  • (fr) Laurent Audibert, « Normalisation » sur developpez.com

Page générée en 0.098 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales
Version anglaise | Version allemande | Version espagnole | Version portugaise