Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
public:std-3:cm1:aspect_logique:2.2.5_normalisation_d_un_schema [2016/09/05 10:55] – edauce | public:std-3:cm1:aspect_logique:2.2.5_normalisation_d_un_schema [2016/09/06 14:32] (Version actuelle) – edauce | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====2.2.5 Normalisation d'un schéma==== | ||
+ | __**Tables mal construites**__ | ||
+ | < | ||
+ | ** Exemple : fournisseurs de composants électroniques: | ||
+ | Fournisseur(nom_f, composant_,adresse_f, prix) | ||
+ | |||
+ | * **Problèmes :** | ||
+ | * **Redondance** : l’adresse des fournisseurs est répétée plusieurs fois | ||
+ | * **Inconsistance** : mauvaise mise à jour => adresses différentes pour un même fournisseur. | ||
+ | * **Problème Insertion** : on ne peut pas insérer dans la table un fournisseur qui ne fournit rien | ||
+ | * **Problème suppression** : si un fournisseur ne fournit plus rien, on perd son adresse | ||
+ | * Solution? | ||
+ | |||
+ | * Couper la table en 2? | ||
+ | <note warning> | ||
+ | Fournisseurs(nom_f, adresse_f) | ||
+ | Catalogue(composant, prix) | ||
+ | </ | ||
+ | --> Impossible de retrouver les prix pratiqués par les différents fournisseurs. | ||
+ | |||
+ | |||
+ | * Nouveau Schéma : | ||
+ | <note tip> | ||
+ | Fournisseurs(nom_f, adresse_f) | ||
+ | Catalogue(nom_f, composant, prix) | ||
+ | </ | ||
+ | --> Il est possible de reconstruire la table initiale en effectuant une jointure entre ces 2 tables sur l’attribut '' | ||
+ | |||
+ | |||
+ | </ | ||
+ | |||
+ | < | ||
+ | **Exercice** : Les tables suivantes sont-elles bien ou mal construites? | ||
+ | |||
+ | * **Enseignement** (__id_enseignant__, | ||
+ | |||
+ | * **Arrêt** (__num_train__, | ||
+ | |||
+ | * **Facture** (__id_client, | ||
+ | </ | ||
+ | |||
+ | **__Les Formes normales__** | ||
+ | * Restreignent les dépendances admises dans un schéma relationnel | ||
+ | * Permettent d’éviter la duplication de l’information au sein des relations | ||
+ | * Définissent une méthode | ||
+ | * de **décomposition** d’un schéma relationnel redondant | ||
+ | * en plusieurs schémas //liés entre eux//: | ||
+ | * Voir: | ||
+ | * [[public: | ||
+ | * [[public: | ||
+ | * [[public: | ||
+ | * [[public: | ||
+ | |||
+ | __Previous__ : [[public: | ||
+ | __Up__ : 2.2 [[public: | ||
+ | __Next__ : [[public: |