Vous êtes sur la page 1sur 6

Institut Supérieur des Sciences Appliquées et de Technologie de

Sousse

Fondements des bases de données


Chapitre IV:

Auditoire : Normalisation et dépendances


2éme année Licence en Ingénierie
des Systèmes de l'Informatique fonctionnelles d’une BD relationnelle
Responsable du Cours:
Dr. Imen MOALLA
imen.moalla@hotmail.fr

Année universitaire : 2021-2022 2

Introduction Normalisation

 Une mauvaise conception des entités et associations  La normalisation est une approche de conception de base de
représentant le monde réel modélisé conduit à des relations données utilisée dans les bases de données relationnelles pour
problématiques éviter la redondance
 Un mauvais schéma défini lors de la phase de conception peut  La normalisation est donc le processus de transformation d’une
conduire à un certain nombre d'anomalies pendant la phase relation ayant des problèmes lors de la mise à jour vers une
d'exploitation de la base : autre relation n’ayant pas ces problèmes
• Des redondances d'information,  L'objectif de la normalisation est de construire un schéma de
• Des anomalies lors des opérations de mise à jour base de données cohérent et possédant certaines propriétés
(insertions, suppressions, modifications) vérifiées par la satisfaction de formes normales.
 Le but des dépendances fonctionnelles et de la théorie de la  Il s'agit d'éliminer toute anomalie afin de faciliter la
normalisation est de s'assurer que le schéma relationnel défini manipulation des relations:
pour une base de données est correctement construit Normalisation des relations
Eclatement d'une relation donnée en plusieurs relations normalisées

3 4
Exemple d'anomalies Exemple d'anomalies

 Soit la relation livre (ISBN, Titre, Editeur, adresse)  Redondance : l'adresse du éditeur sera dupliquée dans chaque

ISBN Titre Editeur Adresse n-uplet


Bases de données - objet et
2-212-09283-0
relationnel
Eyrolles France  Insertion : si on insère un nouveau livre pour un éditeur déjà
2-7117-8645-5 Fondements des bases de données Vuibert USA
Databases and Transaction
référencé, il faudra vérifier que l'adresse est identique
0-201-70872-8 Vuibert USA
Processing
Internet/Intranet et bases de  Mise à jour : si on souhaite modifier l'adresse d’un éditeur, il
2-212-09069-2 Eyrolles France
données
faudra rechercher et mettre à jour tous les n-uplets
 Cette relation qui décrit des livres et leurs éditeurs, contient des correspondant à cet éditeur
redondances provoquant les anomalies suivantes :
 Anomalies d'insertion  Suppression : si on veut supprimer un éditeur, il faudra retrouver
 Anomalies de redondance et supprimer tous les n-uplets correspondant à cet éditeur (pour
 Anomalies de mise à jour
 Anomalies de suppression différents livre) dans la table.
5 6

Exemple d'anomalies Décomposition d’une relation


 Le processus de décomposition est un processus de
 La relation Livre peut être décomposée en deux relations non raffinement successif qui doit aboutir à décomposer une
redondantes : relation en sous-relations sans anomalies et sans pertes
 Le processus de normalisation consiste principalement à
Livre (ISBN, Titre, Editeur, adresse)
diviser ou décomposer les relations initiales en plus petites
relations tout en définissant les liens qui les unissent, c’est ce
Décomposition
qui on appelle la Dépendances Fonctionnelles (DF)
 On mesure la qualité d'une relation par son degré de
normalisation : 1FN (première forme normale), 2FN, 3FN,
FNBC (forme normale de Boyce Codd), 4FN, etc.
Livre1 (ISBN, Titre) Livre2 (Editeur, adresse, ISBN)  La méthode de normalisation consiste à créer des schémas
relationnels répondant à un certain standard appelé forme
normale qui devront respecter les contraintes de
dépendances.
7 8
Normalisation Dépendances fonctionnelles
 Définition
Une dépendance fonctionnelle est une contrainte qui doit
 Les Dépendances Fonctionnelles vérifier des données de telle sorte que la base soit cohérente
par rapport à la réalité qu’elle devrait représenter. On dit qu’il
existe une Dépendance Fonctionnelle (DF) entre deux attributs X
et Y de R si et seulement si à chaque occurrence (ou valeur) de
X peut-être associée une et une seule occurrence (ou valeur) de
Y.
 Les formes normales  Notation
On dit que X détermine fonctionnellement Y ou Y dépend
fonctionnellement de X et l'on note :
X→Y
X → Y signifie que si on connaît la valeur de X, on peut
connaître celle de Y
9 10

Dépendances fonctionnelles Dépendances fonctionnelles


 Exemple de dépendance fonctionnelle (DF)  Propriétés des dépendances fonctionnelle (DF)
Soit le schéma de relation:
 Propriétés de base
PERSONNE (No_Per, Nom, Adresse, Age, Profession)
 Les dépendances fonctionnelles qui s'appliquent sur ce schéma de • Réflexivité : si Y ⊆ X alors X → Y
relation sont les suivantes : • Augmentation : si X → Y alors X ∪ Z → Y ∪ Z
 No_Per -> Nom • Transitivité : si X → Y et Y → Z alors X → Z
 No_Per -> Adresse
 No_Per -> Age  Propriétés déduites
 No_Per -> Profession • Union : si X → Y et X → Z alors X → Y ∪ Z
 No_Per -> Nom, Adresse, Age, Profession • Décomposition : si X → Y ∪ Z alors X → Y et X → Z
• Pseudo-transitivité : si X → Y et W ∪ Y → Z alors W ∪ X → Z
 L'attribut No_Per détermine tous les attributs du schéma de relation.
 Il s'agit d'une propriété de la clé d'une schéma de relation.

11 12
Dépendances fonctionnelles Dépendances fonctionnelles
 Une Dépendance fonctionnelle X →Y est élémentaire (non Graphe des DF
déduites)  Pour chaque relation il faut recenser toutes ses DF élémentaires.
Si pour tout X’⊂ X la dépendance fonctionnelle X’ →Y n’est pas
vraie. En d’autres termes, Y ne dépend pas fonctionnellement d’une On les représente sous forme d'un graphe orienté graphe minimum
partie de X (X est la plus petite quantité d’information donnant Y) des DF de la relation
 Fermeture d’un ensemble de dépendances fonctionnelles F : F + Le graphe minimum des DF permet de trouver les identifiants de la
Ensemble de toutes les dépendances fonctionnelles déduites obtenues relation
par l’application répétées des propriétés de base  L’identifiant d’une relation est l’ensemble (minimal) des nœuds du
 Fermeture transitive d’un ensemble de dépendances
fonctionnelles F : graphe minimum à partir desquels on peut atteindre tous les
Ensemble de toutes les dépendances fonctionnelles déduites obtenues autres nœuds (via les DF)
par transitivité  Exemple de graphe minimum :
 Remarque:
R (A, B, C, D, E) E → A ,E → B,
- Toute clé primaire d’une relation est en DF avec tout autre
attribut de cette même relation. E → C, (≡ E → A, B, C) C → D

13 14

Formes Normales Formes Normales


 Les formes normales sont des propriétés que doivent vérifier les schémas  Première forme normale (1FN):
pour éviter les anomalies de mises à jour, ce sont en ce sens des bons Une relation est en 1èreforme normale si et seulement si :
schémas  Elle possède une clé primaire.
 Les formes normales ont été définies pour permettre la décomposition des
 Tout attribut contient une valeur atomique (indivisible, non
relations sans perte d’informations en utilisant la notion de dépendance
décomposable).
fonctionnelle
 Relativement aux dépendances fonctionnelles, on distingue trois formes  Exemple 1: la relation Employé
normales : Code Nom adresse
 la 1re forme normale
 la 2e forme normale C012 X 40 RUE GRAND BOULEVARD, CANADA 40118
 la 3e forme normale
 Forme Normale de Boyce-codd (BCNF) C013 y 350 FITN AVENUE, NEW YORK, 108118

 Ces formes normales sont basées sur les dépendances  La relation Employé n’est pas en première forme normale car la propriété
fonctionnelles entre les attributs d'une relation adresse est composite ( rue, code postal, ville)

15 16
Formes Normales Formes Normales
 Pour passer en 1ère forme normale, on doit :  Première forme normale :
 Exemple 2: la relation Salarié
 Décomposer l’attribut Adresse en attributs élémentaires Code Nom Caractéristiques
(adresse, code postal, pays)

 La relation Employé (1ère forme normale)


S01

S02
X

Y
Analyste, 12/01/98

Programmeur, 13/04/01

Code Nom adresse Pays Code postal

Code Nom Fonction date-embauche


40 RUE GRAND
C012 X CANADA 40118
BOULEVARD


S01 X Analyste 12/01/98

C013 y 350 FITN AVENUE USA 108118 S02 Y Programmeur 13/04/01

17 18

Formes Normales Formes Normales


 Pour passer en 2ème forme normale, on doit décomposer la table
 Deuxième forme normale (2FN) :
livraison en trois relations produit et fournisseur et livraison
Une relation est en 2ème forme normale si et seulement si :
• Elle est en première forme normale (1FN)  Décomposition:
• tout attribut non clé dépend de la totalité de toutes les clés  N°prod prix.p  produit(N°prod, prix.p)
 Exemple: relation livraison (N°fourn, N°prod, ville.f, Prix-p, qté)  N°fourn ville  fournisseur(N°fourn, ville)
 (N°fourn, N°prod) qté  livraison(N°fourn#, N°prod, qté)
N°fourn N°prod ville.f Prix-p qté
N°prod Prix-p N°fourn ville.f
3 52 lausanne 65 10 Relation
52 65 Relation 3 lausanne
22 10 bienne 15 5 Produit Fournisseur
10 15 22 bienne
22 25 bienne 10 12 22 bienne
25 10

N°fourn # N°prod # qté


 La relation livraison n’est pas à la 2ème forme normale car:
Le ville du fournisseur ne dépend pas du produit Relation 3 52 10
Le prix du produit ne dépend pas du fournisseur livraison 22 10 5
22 25 12
19 20
Formes Normales Formes Normales
 Deuxième forme normale :  Troisième forme normale (3FN) :
 Exemple 2 : Salarié (Code-S, Code-dep, nom, intitulé-dep, ville) Une relation est en 3ème forme normale si et seulement si :
 Elle est en deuxième forme normale
 Les dépendances fonctionnelles entre la clé primaire et les autres
 Cette relation est en 1FN mais non en 2 FN car les DF: colonnes sont directes.
Code-S  nom, Villr Une colonne est en dépendance fonctionnelle directe avec la clé
Code-dep  intitulé-dep primaire si elle ne dépend pas fonctionnellement d’une autre colonne
non clé primaire
 Exemple 1 : Relation Produit
La solution réside dans la décomposition de la
Produit ( code-pdt, design, code-tva, taux-tva)
relation
Cette relation est en 1FN et en 2FN mais non en 3FN car:
R1(Code-S, nom, Ville, #code-dep) La DF code-pdt  taux tva n’est pas direct
R2 ( Code-dep, intitulé-dep) Code-pdt code tva
Code tvataux-tva
21 22

Formes Normales
Pour passer en 3ème forme normale, on doit décomposer la
table produit en deux relations produit et TVA
 Décomposition:
 produit (code-pdt, design, #code-tva)
 TVA (code-tva, taux-tva)
Exemple 2 : Relation Fournisseur (N°For, ville, pays)
N°For  ville
N°For  Pays
VillePays
 La solution réside dans la décomposition de la relation
R1(N°For, #ville)
R2(ville, pays)

23

Vous aimerez peut-être aussi