Vous êtes sur la page 1sur 22

Normalisation d’une

(4) Base de Données


Relationnelle

2017-2018
Normalisation: Définition

Le processus de restructurer le modèle de données logiques pour :


◦ Eliminer les redondances,
◦ Organiser les données efficacement,
◦ Réduire le potentiel d'anomalies pendant les opérations sur les
données.

La théorie de la normalisation repose sur l'analyse de dépendances


entre attributs qui sont à l'origine de phénomènes de redondance.

La normalisation consiste en des méthodes de décomposition des


relations.

2
Normalisation: Définition

Les classifications formelles utilisées pour décrire le niveau de


normalisation d'une base de données relationnelle sont appelées les
formes normales (FN)

Il existe huit formes normales. Les quatre premières sont les plus
pratiques et sont à connaître.

Chaque nouvelle forme normale marque une étape supplémentaire de


progression vers des relations présentant de moins en moins de
redondance

Le but est d'obtenir une représentation des données présentant un


minimum de redondance à l'intérieur de chaque relation et un
maximum d'indépendance entre les différentes relations
3
Normalisation: Dépendances Fonctionnelles

La théorie de la normalisation est basée sur les "dépendances fonctionnelles"


(DF).
On dit qu'un attribut B dépend fonctionnellement d'un attribut A si,
étant donné une valeur de A, il lui correspond une unique valeur de
B.

Notation : A --> B
 Exemple :
La dépendance fonctionnelle N°CIN  NOM signifie qu'à un numéro
de CIN est associé un nom seulement.
Normalisation: Dépendances Fonctionnelles

Dépendance Fonctionnelle Simple (DFS)


Il y a DFS entre le constituant A et le constituant B (ou A détermine B, ou
B dépend fonctionnellement de A) Ssi à partir d’une valeur a  DA on ne
peut lui associer qu’une seule valeur unique b  DB.

Exemple: N°CIN  Nom

Dépendance Fonctionnelle Élémentaire (DFE)


Il y a DFE entre le constituant A et le constituant B Ssi:
 AB
 X  A tel que X  B
E
Normalisation: Dépendances Fonctionnelles

Exemple: N°CIN  NomPer


Cette DF est élémentaire car N°CIN est indécomposable
 on ne peut pas trouver une partie incluse dans le N°CIN qui détermine
le nom d’une personne.

Exemple: NomPer  N°CIN


On ne peut pas parler de DFE tant que la DFS n’est pas vérifiée.

Exemple: Matricule véhicule  N°CIN



Numéro d’ordre
Numéro série

 C’est une DFE
Normalisation: Dépendances Fonctionnelles

Exemple:
Deux plages d'une même région ne peuvent pas porter le même nom
(contrairement à deux plages de régions différentes) ; le degré de
pollution d'une plage dépend exclusivement de la plage et du nom de
la région.
NOMP  POLLUTION

REGION  POLLUTION

 (NOMP, REGION)  POLLUTION est une DFE.


Normalisation: Dépendances Fonctionnelles

Dépendance Fonctionnelle Directe (DFD)


Il y a DFD entre le constituant A et le constituant B Ssi
 AB
 X  A tel queA X
E
XB

Exemple: N°Cde  N°Client (DFD)


N°Client  AdresseClt (DFD)

N°Cde  AdresseClt (DF Non Directe)
Dépendances Fonctionnelles & Identifiants

Le graphe minimum des DF permet de trouver les identifiants de la


relation

L’identifiant d’une relation est l’ensemble (minimal) des nœuds du


graphe minimum à partir desquels on peut atteindre tous les autres
nœuds (via les DF)

 Exemples: E
 T1 (A, B, C, D, E)
A B CD

X Y
 T2 (A, B, C, D, E, X,Y)
A B C E

D
Normalisation

Que faire si une relation n’est pas « normalisée » ?


 DÉCOMPOSITION

La relation doit être remplacée par un ensemble de relations (plus


petites: moins d’attributs)

Décomposition d'une relation


 Soit une relation non satisfaisante  trouver un ensemble de relations
satisfaisantes qui décrit les mêmes informations
Normalisation

 Ensemble de sous-relations
Relation obtenues par projection
(Projection)
* (Jointure)

Exemple de Projection:
S B C D B,D(S) B D
b c d b d
a a b a b
a a c a c

Exemple de Jointure:
R A B S B C D R S A B C D
a b b c d a b c d
a c a a b b b c d
b b a a c
Qualité d’une Décomposition

Une « bonne » décomposition est une décomposition


 sans perte d’information: La « recomposition » de la relation à partir des
« morceaux » doit redonner la relation initiale
 sans perte de DF: toute DF doit être dans l’une des relations obtenues
par décomposition
Sans Perte d’information
soit T (x, y, z) décomposée en T1 ( x, y) et T2 (x, z)
tel que: T1 = PROJECTION [x, y] T
T2 = PROJECTION [x, z ] T
La décomposition est sans perte d’informations Ssi :
T = JOINTURE (T1, T2)
Exemple de Bonne Décomposition

T
NomEmpl Adresse Poste Date-Naissance
Ben Saleh Tunis Directeur 12/10/45
Zeineb Bizerte Secrétaire 10/09/76
Fatma Nabeul Secrétaire 14/12/80

T1 T2
NomEmpl Adresse Poste NomEmpl Date
Ben Saleh Tunis Directeur Ben Saleh 12/10/45
Zeineb Bizerte Secrétaire Zeineb 10/09/76
Fatma Nabeul Secrétaire Fatma 14/12/80
Exemple de Mauvaise Décomposition

T1 T2
NomEmpl Adresse Poste Poste Date
Ben Saleh Tunis Directeur Directeur 12/10/45
Zeineb Bizerte Secrétaire Secrétaire 10/09/76
Fatma Nabeul Secrétaire Secrétaire 14/12/80

Ben Saleh Tunis Directeur 12/10/45


Zeineb
Zeineb
Bizerte
Bizerte
Secrétaire
Secrétaire
10/09/76
14/12/80
 #T
Fatma Nabeul Secrétaire 14/12/80
Fatma Nabeul Secrétaire 10/09/76
Normalisation: 1ère Forme Normale

1FN (rubrique élémentaire) :


 Une Relation est en 1FN, si touts les attributs sont élémentaires ou
atomiques.
 Un attribut représente une donnée élémentaire du monde réel ;
 Un attribut ne peut désigner, ni une donnée composée d'entités
de natures différentes, ni une liste de données de même nature.
Normalisation: 1ère Forme Normale

Nom Note 1 Note 2 Note 3

Ben Saleh 8 12.5 NULL

Nom Notes Tounsi 2.5 0 18

Ben Saleh 8,12.5 …

Tounsi 2.5, 0 , 18
Nom Note

Ben Saleh 8
Ben Saleh 12.5
Tounsi 2.5
Tounsi 0
Tounsi 18

 La relation R n’est pas en 1FN.
Normalisation: 2ème Forme Normale

2FN (dépendance fonctionnelle élémentaire) :


Une Relation est en deuxième forme normale, si:
 Elle remplit les conditions de la 1FN et si,
 Tout attribut n'appartenant pas à une clé ne dépend pas d'une
partie de cette clé. (DFE)

A,B -> C
B->C
Normalisation: 3ème Forme Normale

3FN (Dépendance Fonctionnelle Directe):


Une relation est en 3FN si :
 Elle est en 2FN ;
 Tout attribut n'appartenant pas à une clé ne dépend pas d'un
attribut non clé. (DFD)
Normalisation: F N de Boyce Codd

Une relation est en FNBC si


 Elle est en 3FN
 Les seules DF sont de la forme Clé  X (seules les clés sont en partie
gauche de DF: Source de DF)

Exemple: Université (étudiant, matière, enseignant, note)


avec les DF
étudiant, matière → enseignant, note  N’est pas en FNBC
enseignant → matière

Exemple: Personne (nom, prénom, Date-Naissance, nbrEnfants)


avec la DF
 Elle est en FNBC
nom, prénom → Date-Naissance, nbrEnfants
Normalisation: Application

Soit la relation R (A, B, C, D, E) avec les DFs suivantes:


A B
A C A
C, D  E
B D B D C

1. Donner le graphe minimum des DFs E

2. Déterminer l’identifiant de la relation R


3. Dire si R est en FNBC ? Non
4. Rendre la relation en FNBC sinon
Dépendances Fonctionnelles: Application

Soit la relation R (A, B, C, D, E) avec les DFs suivantes:


A
A B
A C
C, D  E B D C
B D
E
BD
Décomposer R en

R1 (B, D)
R2 (A, B, C, E)
 R2 N’est pas en FNBC Pourquoi? C, D  E

Décomposer R2 en
R21(D, C, E)
R22(A, B, C)
Dépendances Fonctionnelles: Application

Soit R(A, B, C, D, E, F, G)
Ces DFs sont-elles vérifiées dans ces instances ?

A B C D E F G
a1 b2 c2 d3 e2 f1 g3 A, B  C Oui A, B  F non
a1 b2 c2 d1 e4 f3 g2 A, B  D Non B  C Oui
a2 b3 C2 d1 e5 f2 G2 A, B  E Non D  E Non
a2 b4 C5 d1 e5 f3 G2 G  A non D  F Non

Vous aimerez peut-être aussi