public:std-3:cm1:aspect_logique:2.2.5_normalisation_d_un_schema:normalisation_3fn

* Lorsqu’un schéma relationnel n’est pas en troisième forme normale, il doit être normalisé:

Normalisation 3FN
  • On crée une table pour chaque DFD trouvée au sein des attributs n'appartenant pas à la clé.

Soit : R(A1,...,Am_,B1,...,Bi,...,Bj,...,Bn) avec : A1,...,AmDFDB1,...,Bi,...,Bj1,Bj+1,...,Bn BiDFDBj Alors : R1(A1,...,Am_,B1,...,Bi,...,Bj1,Bj+1,...,Bn) R2(Bi_,Bj)

Attention

Comme précédemment, il est important de conserver la clé primaire de la table initiale si elle permet d'associer les valeurs dispersées dans les tables.

Exemple :

Avant :

  • Commande (num_commande, nom_f, adresse_f, composant, quantité)
  • avec :
    • num_commande → nom_f, composant, quantité
    • nom_f → adresse_f

Après :

  • Commande (num_commande, nom_f, composant, quantité)
  • Client (nom_f, adresse_f)

L’attribut nom_f est maintenant clé primaire de la table Client et clé étrangère de la table Commande.

Previous : 3eme_forme_normale_3fn Up : 2.2.5 Normalisation d'un schéma

  • public/std-3/cm1/aspect_logique/2.2.5_normalisation_d_un_schema/normalisation_3fn.txt
  • Dernière modification : 2016/09/06 14:44
  • de edauce