Beruflich Dokumente
Kultur Dokumente
E
R(X)= {< x > tel que < x > e R(X) et E(X) }.
Slection :
Signature : Relation expression logique Relation
La slection permet de rechercher dans une relation
les n-uplets qui satisfont une proprit donne sous la
forme dune expression logique. Elle est note
E
R
ou Select(R, E), o E est lexpression de slection. Le
rsultat est une relation de mme schma que la
relation R et dont chaque n-uplet vrifie lexpression
E, cest--dire :
E
R(X)= {< x > tel que < x > e R(X) et E(X) }.
77
M. Moussi
Lalgbre relationnelle ou langage
algbrique
Exemple : soit la relation Livre de lexemple
prcdent,
la slection : o
(Genre=posie)
(Livre ) est la relation
appele LivrePosie:
Relation LivrePosie
la slection o
(Genre=Roman et NumLivre = L2 )
(Livre ) est la
relation appele Roman.
Relation Roman.
NumLivre Genre
Exemple : soit la relation Livre de lexemple
prcdent,
la slection : o
(Genre=posie)
(Livre ) est la relation
appele LivrePosie:
Relation LivrePosie
la slection o
(Genre=Roman et NumLivre = L2 )
(Livre ) est la
relation appele Roman.
Relation Roman.
NumLivre Genre
L3 Posie
L1 Posie
NumLivre Genre
L4 Roman
78
M. Moussi
Lalgbre relationnelle ou langage
algbrique
Produit cartsien :
Signature : Relation Relation Relation.
Soit R(X) et S(Y) deux relations o X et Y sont des
ensembles disjoints dattributs.
Le produit cartsien de R(X) par S(Y) , not R S,
est constitu par lensemble des n-uplets obtenus en
concatnant chaque n-uplet de R avec chaque
n-ulpet de S, cest--dire :
R S = { < z > tel que x e R, y e S, - z e T tq
H
X
(z)= x et H
Y
(z )=y }.
Produit cartsien :
Signature : Relation Relation Relation.
Soit R(X) et S(Y) deux relations o X et Y sont des
ensembles disjoints dattributs.
Le produit cartsien de R(X) par S(Y) , not R S,
est constitu par lensemble des n-uplets obtenus en
concatnant chaque n-uplet de R avec chaque
n-ulpet de S, cest--dire :
R S = { < z > tel que x e R, y e S, - z e T tq
H
X
(z)= x et H
Y
(z )=y }.
79
M. Moussi
Lalgbre relationnelle ou langage
algbrique
Exemple : soit les deux relations suivantes :
Relation R Relation S
Le rsultat du produit cartsien de R par S est la
relation T donne par :
Relation T
NumBib
B1
B2
NumLivre Genre
L3 Posie
L1 Posie
Exemple : soit les deux relations suivantes :
Relation R Relation S
Le rsultat du produit cartsien de R par S est la
relation T donne par :
Relation T
B2 L1 Posie
NumLivre Genre NumBib
L3 Posie B1
L3 Posie B2
L1 Posie B1
L1 Posie B2
80
M. Moussi
Lalgbre relationnelle ou langage
algbrique
jointure :
Signature : Relation Relationu-expression Relation
La u-jointure de deux relations R(X) et S(Y) permet de
constituer une relation sur la base dune u-expression
qui doit tre vrifie par des attributs communs, une u-
expression tant une expression logique construite
laide dexpressions de type X
i
Y
j
, u est lun des
oprateurs de comparaison : <, >,=, >, s, =.
Cette opration peut se dfinir comme la composition du
produit cartsien et dune slection utilisant la
u-expression, soit : o
(u-expression)
(R S).
jointure :
Signature : Relation Relationu-expression Relation
La u-jointure de deux relations R(X) et S(Y) permet de
constituer une relation sur la base dune u-expression
qui doit tre vrifie par des attributs communs, une u-
expression tant une expression logique construite
laide dexpressions de type X
i
Y
j
, u est lun des
oprateurs de comparaison : <, >,=, >, s, =.
Cette opration peut se dfinir comme la composition du
produit cartsien et dune slection utilisant la
u-expression, soit : o
(u-expression)
(R S).
81
M. Moussi
Lalgbre relationnelle ou langage
algbrique
Exemple : soient les deux relations suivantes
Relation livre Relation auteur
Lqui-jointure(u est =)sur livre.NumLivre=Auteur.NumLivre est :
Relation auteurlivre
NumLivre Genre
L3 Posie
L1 Posie
L2 Histoire
NomAuteur NumLivre
Ahmed L3
Youssef L1
khaled L4
Exemple : soient les deux relations suivantes
Relation livre Relation auteur
Lqui-jointure(u est =)sur livre.NumLivre=Auteur.NumLivre est :
Relation auteurlivre
L2 Histoire
L4 Roman
khaled L4
Mohammed L5
NumLivre Genre NomAuteur NumLivre
L3 Posie Ahmed L3
L1 Posie Youssef L1
L4 Roman khaled L4
82
M. Moussi
Lalgbre relationnelle ou langage
algbrique
Remarques :
La jointure naturelle de R et S (note R*S ) est
lqui-jointure de R et S sur les attributs ayant mme
nom dans R et S, suivie de la projection qui permet
de conserver un seul de ces attributs gaux de
mme nom.
La jointure se fait sur deux attributs qui reprsentent
la mme information mme si ils ont des noms
diffrents.
Remarques :
La jointure naturelle de R et S (note R*S ) est
lqui-jointure de R et S sur les attributs ayant mme
nom dans R et S, suivie de la projection qui permet
de conserver un seul de ces attributs gaux de
mme nom.
La jointure se fait sur deux attributs qui reprsentent
la mme information mme si ils ont des noms
diffrents.
83
M. Moussi
Lalgbre relationnelle ou langage
algbrique
Union :
Signature : Relation Relation Relation.
Lunion de deux relations R(X) et S(X) est une
relation T(X), lensemble de ses n-uplets est
constitu par lunion des n-uplets de R et ceux de
S, cest--dire :
R S := T = {<x> tel que <x>e R ou <x>e S }.
Union :
Signature : Relation Relation Relation.
Lunion de deux relations R(X) et S(X) est une
relation T(X), lensemble de ses n-uplets est
constitu par lunion des n-uplets de R et ceux de
S, cest--dire :
R S := T = {<x> tel que <x>e R ou <x>e S }.
84
M. Moussi
Lalgbre relationnelle ou langage
algbrique
Exemple : soient les deux relations :
Relation livre1 Relation livre2
Livre 1 Livre 2
NumLivre Genre
L3 Posie
L1 Posie
L2 Histoire
NumLivre Genre
L3 Posie
L1 Posie
L5 Roman
Exemple : soient les deux relations :
Relation livre1 Relation livre2
Livre 1 Livre 2
L2 Histoire
L4 Roman
L5 Roman
NumLivre Genre
L3 Posie
L1 Posie
L2 Histoire
L4 Roman
L5 Roman
85
M. Moussi
Lalgbre relationnelle ou langage
algbrique
Intersection :
Signature : Relation Relation Relation.
Lintersection de deux relations R(X) et S(X) est
une relation T(X) constitue par les n-uplets
prsents la fois dans R et dans S :
R S := T = {<x> tel que <x>e R et <x>e S }.
Intersection :
Signature : Relation Relation Relation.
Lintersection de deux relations R(X) et S(X) est
une relation T(X) constitue par les n-uplets
prsents la fois dans R et dans S :
R S := T = {<x> tel que <x>e R et <x>e S }.
86
M. Moussi
Lalgbre relationnelle ou langage
algbrique
Exemple :
Lintersection des deux relations prcdentes livre1 et
livre2 est la relation :
Livre 1 Livre 2
NumLivre Genre NumLivre Genre
L3 Posie
L1 Posie
87
M. Moussi
Lalgbre relationnelle ou langage
algbrique
Diffrence :
Signature : Relation Relation Relation.
La diffrence entre deux relations R(X) et S(X)
est une relation T(X) constitue par les n-uplets
prsents dans R mais pas dans S :
R \ S := T = { <x> tel que <x>e R et <x>e S }
Diffrence :
Signature : Relation Relation Relation.
La diffrence entre deux relations R(X) et S(X)
est une relation T(X) constitue par les n-uplets
prsents dans R mais pas dans S :
R \ S := T = { <x> tel que <x>e R et <x>e S }
88
M. Moussi
Lalgbre relationnelle ou langage
algbrique
Exemple :
La diffrence des deux relations livre1 et livre2 est la
relation :
Livre 1 \ Livre 2
NumLivre Genre NumLivre Genre
L2 Histoire
L4 Roman
89
M. Moussi
Normalisation
Introduction :
La constitution de la liste dattributs du schma
doit reflter un phnomne du domaine
dapplication et, dautre part, ne doit pas
occasionner de redondance, avec toutes ses
implications.
Les formes normales des relations et les
mcanismes pour les construire permettent
dobtenir des relations non redondante.
Ces mcanismes sont fonds sur les notions de
cls de relations et de dpendances entre
donnes.
Introduction :
La constitution de la liste dattributs du schma
doit reflter un phnomne du domaine
dapplication et, dautre part, ne doit pas
occasionner de redondance, avec toutes ses
implications.
Les formes normales des relations et les
mcanismes pour les construire permettent
dobtenir des relations non redondante.
Ces mcanismes sont fonds sur les notions de
cls de relations et de dpendances entre
donnes.
90
M. Moussi
Normalisation
Exemple de mauvaise relation :
Relation Produit
cette relation prsente diffrentes difficults de mise
jour :
codeProduit libell PU Qt NumFournisseur Nom Adresse
P1 peinture 55 100 F451 Toto Oujda
Exemple de mauvaise relation :
Relation Produit
cette relation prsente diffrentes difficults de mise
jour :
P2 Poudre 62,4 200 FH215 Titi Casa
P3 huile 45 400 F214 Tintin oujda
91
M. Moussi
Normalisation
Anomalie de suppression : si je supprime un produit, je
doit supprimer tout le tuple, ce qui entrane la perte des
informations concernant le fournisseur.
Anomalie dinsertion : pour ajouter un nouveau
fournisseur, il faut obligatoirement fournir des valeurs
pour le code Produit et la quantit.
Anomalie de modification : si on souhaite changer
ladresse dun fournisseur , il faut parcourir tous les
tuples concerns (tous les produits quil fournit), si non
on aura une incohrence.
Anomalie de suppression : si je supprime un produit, je
doit supprimer tout le tuple, ce qui entrane la perte des
informations concernant le fournisseur.
Anomalie dinsertion : pour ajouter un nouveau
fournisseur, il faut obligatoirement fournir des valeurs
pour le code Produit et la quantit.
Anomalie de modification : si on souhaite changer
ladresse dun fournisseur , il faut parcourir tous les
tuples concerns (tous les produits quil fournit), si non
on aura une incohrence.
92
M. Moussi
Normalisation
Dcomposition en trois relations non redondantes
sans occasionner de perte dinformation.
Relation initiale :
Produit (code Produit, libell, PU, Qt, NumFournisseur,Nom,dresse)
Premire dcomposition :
Relation Produit1(code Produit, libell, PU)
Relation Produit2(code Produit, NumFournisseur, Qt, Nom,Adresse)
Deuxime dcomposition :
Relation Produit1(code Produit, libell, PU)
Relation Produit21(code Produit, NumFournisseur, Qt)
Relation Produit22(NumFournisseur, Nom, Adresse)
Dcomposition en trois relations non redondantes
sans occasionner de perte dinformation.
Relation initiale :
Produit (code Produit, libell, PU, Qt, NumFournisseur,Nom,dresse)
Premire dcomposition :
Relation Produit1(code Produit, libell, PU)
Relation Produit2(code Produit, NumFournisseur, Qt, Nom,Adresse)
Deuxime dcomposition :
Relation Produit1(code Produit, libell, PU)
Relation Produit21(code Produit, NumFournisseur, Qt)
Relation Produit22(NumFournisseur, Nom, Adresse)
93
M. Moussi
Normalisation
Dpendances fonctionnelles (DFs) :
Dfinition : Soit R(X, Y, Z) un schma de relation
avec Z ventuellement vide. On dit que X dtermine
Y dans R, ou Y dpend fonctionnellement de X
dans R, si pour tout tuple <x, y, z>, <x,y,z> de R,
x =x y =y. On note X Y.
Exemple :
Dans le schma :
Produit(code Produit, libell, PU, Qt, NumFournisseur,
Nom, adresse), on a les dpendances fonctionnelles :
code Produit libell, PU ;
NumFournisseur Nom, adresse;
code Produit, NumFournisseur Qt.
Dpendances fonctionnelles (DFs) :
Dfinition : Soit R(X, Y, Z) un schma de relation
avec Z ventuellement vide. On dit que X dtermine
Y dans R, ou Y dpend fonctionnellement de X
dans R, si pour tout tuple <x, y, z>, <x,y,z> de R,
x =x y =y. On note X Y.
Exemple :
Dans le schma :
Produit(code Produit, libell, PU, Qt, NumFournisseur,
Nom, adresse), on a les dpendances fonctionnelles :
code Produit libell, PU ;
NumFournisseur Nom, adresse;
code Produit, NumFournisseur Qt.
94
M. Moussi
Normalisation
Proprits des DFs :
Rflexivit : si Y _ X alors X Y.
Augmentation : si X Y alors X Z Y Z.
Transitivit : si X Y et Y Z alors X Z.
Union : si X Y et X Z alors X Y Z.
Pseudo-transitivit : si X Y et Y WZ.
alors X WZ.
Dcomposition : si X Y et Z _ Y alors X Z.
Proprits des DFs :
Rflexivit : si Y _ X alors X Y.
Augmentation : si X Y alors X Z Y Z.
Transitivit : si X Y et Y Z alors X Z.
Union : si X Y et X Z alors X Y Z.
Pseudo-transitivit : si X Y et Y WZ.
alors X WZ.
Dcomposition : si X Y et Z _ Y alors X Z.
95
M. Moussi
Normalisation
Typologie des DFs :
X Y est triviale si Y _ X.
X Y est lmentaire si pour tout X c X, la DF
X Y nest pas vrai. i.e., Y ne dpend dune partie
de X. Par exemple, codeProduit, libell PU nest
pas lmentaire.
X Y est canonique si sa partie droite ne comporte
quun seul attribut et un ensemble F de DFs est
canonique si chacune de ses dpendances est
canonique.
X Y est directe si elle est lmentaire et si Y ne
dpend pas transitivement de X.
Typologie des DFs :
X Y est triviale si Y _ X.
X Y est lmentaire si pour tout X c X, la DF
X Y nest pas vrai. i.e., Y ne dpend dune partie
de X. Par exemple, codeProduit, libell PU nest
pas lmentaire.
X Y est canonique si sa partie droite ne comporte
quun seul attribut et un ensemble F de DFs est
canonique si chacune de ses dpendances est
canonique.
X Y est directe si elle est lmentaire et si Y ne
dpend pas transitivement de X.
96
M. Moussi
Normalisation
Graphe des DFs :
Les DFs peuvent tre prsentes laide dun
graphe dont les nuds sont les attributs
impliqus dans les Dfs et les arcs sont les
dpendances. Par exemple, T(A, B, C, D, E) avec
les DFs : E A , E B, E C et C D :
E
A B C
D
Graphe des DFs :
Les DFs peuvent tre prsentes laide dun
graphe dont les nuds sont les attributs
impliqus dans les Dfs et les arcs sont les
dpendances. Par exemple, T(A, B, C, D, E) avec
les DFs : E A , E B, E C et C D :
E
A B C
D
97
M. Moussi
Normalisation
Exemple :
Produit (code Produit, libell, PU, Qt, NumFournisseur, adresse),
on a les DFs :
NumFournisseur adresse ;
code Produit libell ;
code Produit PU ;
NumFournisseur , code Produit Qt ;
et le graphe DFS :
NumFournisseur code Produit
Adresse Qt PU libell
Exemple :
Produit (code Produit, libell, PU, Qt, NumFournisseur, adresse),
on a les DFs :
NumFournisseur adresse ;
code Produit libell ;
code Produit PU ;
NumFournisseur , code Produit Qt ;
et le graphe DFS :
NumFournisseur code Produit
Adresse Qt PU libell
98
M. Moussi
Normalisation
DFs et identifiants :
Un attribut ou une liste dattributs X est une cl
pour la relation R(X,Y,Z) si X Y Z.
X est une cl minimale si X Y Z est
lmentaire.
Le graphe minimum des DFs permet de trouver
les identifiants de la table.
Lidentifiant dune table est lensemble minimal
des nuds du graphe minimum partir desquels
on peut atteindre tous les autres nuds.
DFs et identifiants :
Un attribut ou une liste dattributs X est une cl
pour la relation R(X,Y,Z) si X Y Z.
X est une cl minimale si X Y Z est
lmentaire.
Le graphe minimum des DFs permet de trouver
les identifiants de la table.
Lidentifiant dune table est lensemble minimal
des nuds du graphe minimum partir desquels
on peut atteindre tous les autres nuds.
99
M. Moussi
Normalisation
Fermeture transitive : la fermeture transitive dun
ensemble F de DFs lmentaires est lensemble,
not F
+
, de DFs lmentaires obtenu en ajoutant
F les DFs lmentaires obtenues par transitivit.
Exemple : T(A, B, C, D, E), avec les DFS :
F = { E A, E B, E C, C D},
F
+
= F { E D }.
Deux ensembles de DFs sont dits quivalents sils
ont la mme fermeture transitive.
Fermeture transitive : la fermeture transitive dun
ensemble F de DFs lmentaires est lensemble,
not F
+
, de DFs lmentaires obtenu en ajoutant
F les DFs lmentaires obtenues par transitivit.
Exemple : T(A, B, C, D, E), avec les DFS :
F = { E A, E B, E C, C D},
F
+
= F { E D }.
Deux ensembles de DFs sont dits quivalents sils
ont la mme fermeture transitive.
100
M. Moussi
Normalisation
Couverture minimale :
Ensemble F de DFs lmentaires vrifiant :
Aucune dpendance dans F nest redondante, i.e.,
pour toute DF f de F, F-f nest pas quivalente F
Toute DF lmentaire des attributs est dans F+
En gnral, nest pas unique.
Est utile pour la dcomposition sans perte
dinformation.
Exemple : lensemble des DFs
F = { E A, E B, E C, C D}, admet comme
couvertuture minimale, lensemble :
{ E A, E B, E C, C D},
Couverture minimale :
Ensemble F de DFs lmentaires vrifiant :
Aucune dpendance dans F nest redondante, i.e.,
pour toute DF f de F, F-f nest pas quivalente F
Toute DF lmentaire des attributs est dans F+
En gnral, nest pas unique.
Est utile pour la dcomposition sans perte
dinformation.
Exemple : lensemble des DFs
F = { E A, E B, E C, C D}, admet comme
couvertuture minimale, lensemble :
{ E A, E B, E C, C D},
101
M. Moussi
Normalisation
Normalisation par dcomposition :
Notion de dcomposition :
R(X, Y, Z) est dcomposable selon (X, Y) et (X,
Z) sil existe R1 et R2 telles que R1=Proj
X,Y
(R),
R2= Proj
X,Z
(R) et R=R1*R2. i.e., R est la jointure
naturelle de R1 et de R2.
La dcomposition en sous-relations doit vrifier
deux critres fondamentaux :
tre sans perte dinformation et
prserve les dpendances fonctionnelles.
Normalisation par dcomposition :
Notion de dcomposition :
R(X, Y, Z) est dcomposable selon (X, Y) et (X,
Z) sil existe R1 et R2 telles que R1=Proj
X,Y
(R),
R2= Proj
X,Z
(R) et R=R1*R2. i.e., R est la jointure
naturelle de R1 et de R2.
La dcomposition en sous-relations doit vrifier
deux critres fondamentaux :
tre sans perte dinformation et
prserve les dpendances fonctionnelles.
102
M. Moussi
Normalisation
Dcomposition sans perte dinformation :
Une dcomposition est sans perte dinformation
si la jointure naturelle des sous-relations donne
exactement tous les tuples de la relation initiale.
Exemple :
Relation R
avec les DFs :
AB,C ;
CD ;
DB.
Dcomposition sans perte dinformation :
Une dcomposition est sans perte dinformation
si la jointure naturelle des sous-relations donne
exactement tous les tuples de la relation initiale.
Exemple :
Relation R
avec les DFs :
AB,C ;
CD ;
DB.
A B C D
a 5 x 2
b 5 y 1
c 5 x 2
103
M. Moussi
Normalisation
La relation R est dcompose en deux sous-relations
R1(A, B) et R2(B, C, D) :
Relation R1 Relation R2
La jointure de R1 et R2 fournit 6 tuples alors que la
relation R nen possdait que 3.
B C D
5 x 2
A B
a 5
La relation R est dcompose en deux sous-relations
R1(A, B) et R2(B, C, D) :
Relation R1 Relation R2
La jointure de R1 et R2 fournit 6 tuples alors que la
relation R nen possdait que 3.
5 x 2
5 y 1
b 5
c 5
104
M. Moussi
Normalisation
Thorme de dcomposition : Si R(X, Y, Z) est
une relation avec X Y. alors R(X, Y, Z) est
dcomposable sans perte dinformation en R1(X,Y)
et R2(X, Z), i.e., R est une jointure des deux
relations R1 et R2.
Thorme de dcomposition : Si R(X, Y, Z) est
une relation avec X Y. alors R(X, Y, Z) est
dcomposable sans perte dinformation en R1(X,Y)
et R2(X, Z), i.e., R est une jointure des deux
relations R1 et R2.
105
M. Moussi
Normalisation
Dcomposition avec prservation des DFs :
Dcomposition dune relation R en R1, R2,Rn,
telle que F+ des DFs de R est la mme que celle
de lunion des DFs de R1,R2,Rn.
Exemple : La dcomposition de la relation
R(A,B,C,D) prcdente en R1(A, B, C) et R2(A,D)
est sans perte dinformation mais avec perte de
DFs, D B ne peut pas se retrouver sur la
projection des DFs initiales sur la dcomposition.
Dcomposition avec prservation des DFs :
Dcomposition dune relation R en R1, R2,Rn,
telle que F+ des DFs de R est la mme que celle
de lunion des DFs de R1,R2,Rn.
Exemple : La dcomposition de la relation
R(A,B,C,D) prcdente en R1(A, B, C) et R2(A,D)
est sans perte dinformation mais avec perte de
DFs, D B ne peut pas se retrouver sur la
projection des DFs initiales sur la dcomposition.
106
M. Moussi
Normalisation
Formes normales :
Premire forme normale : une relation est dite
en premire forme normale (1FN), si :
chaque valeur de chaque attribut de chaque tuple est
une valeur simple et mono-valu.
Exemple : cours (numEtudiant, listcours ) nest pas
en 1FN car lattribut listcours nest pas simple.
Formes normales :
Premire forme normale : une relation est dite
en premire forme normale (1FN), si :
chaque valeur de chaque attribut de chaque tuple est
une valeur simple et mono-valu.
Exemple : cours (numEtudiant, listcours ) nest pas
en 1FN car lattribut listcours nest pas simple.
107
M. Moussi
Normalisation
Deuxime forme normale : Une relation est dite
en deuxime forme normale (2FN) si et seulement
si :
elle est en 1FN et
tout attribut nappartenant pas une cl ne dpend
pas dune partie de la cl.
Exemple :
Produit2(code Produit,NumFournisseur, Qt, Nom, adresse)
nest pas en 2FN, les attributs nom et adresse ne
dpendent que du NumFournisseur.
Deuxime forme normale : Une relation est dite
en deuxime forme normale (2FN) si et seulement
si :
elle est en 1FN et
tout attribut nappartenant pas une cl ne dpend
pas dune partie de la cl.
Exemple :
Produit2(code Produit,NumFournisseur, Qt, Nom, adresse)
nest pas en 2FN, les attributs nom et adresse ne
dpendent que du NumFournisseur.
108
M. Moussi
Normalisation
Troisime forme normale : une relation est en
troisime forme normale (3FN) si
elle est en 2FN et
si tout attribut ne fait pas partie dune cl ne dpend
pas dun attribut non cl.
Exemple :
Enseignant (Nom, Bureau, Dpartement, Discipline, TlBur)
Avec des rgles de gestions qui se traduisent par
les DFs suivantes:
Dpartement Discipline
Dpartement, Bureau TlBur
TlBur Bureau, dpartement,
Nest pas en 3FN.
Troisime forme normale : une relation est en
troisime forme normale (3FN) si
elle est en 2FN et
si tout attribut ne fait pas partie dune cl ne dpend
pas dun attribut non cl.
Exemple :
Enseignant (Nom, Bureau, Dpartement, Discipline, TlBur)
Avec des rgles de gestions qui se traduisent par
les DFs suivantes:
Dpartement Discipline
Dpartement, Bureau TlBur
TlBur Bureau, dpartement,
Nest pas en 3FN.
109
M. Moussi
Normalisation
Thorme : toute relation a au moins une
dcomposition en 3FN qui est sans perte
dinformation et qui prserve les DFs.
110
M. Moussi
Normalisation
Algorithme de dcomposition en 3FN :
Entre : R(X) avec F est lensemble des DF.
Sortie : S = { R1, R2, ,Rn } avec Ri(Xi) en 3NF.
tape 1 : Rechercher une couverture minimale
CM(F) de F.
tape 2 : Partitionner CM(F) en F1, F2, , Fn
tels que toutes les DFs dun mme groupe aient
la mme partie gauche.
tape 3 : Construire les Ri(Xi) avec Xi constitue
de lunion des attributs de Fi.
Algorithme de dcomposition en 3FN :
Entre : R(X) avec F est lensemble des DF.
Sortie : S = { R1, R2, ,Rn } avec Ri(Xi) en 3NF.
tape 1 : Rechercher une couverture minimale
CM(F) de F.
tape 2 : Partitionner CM(F) en F1, F2, , Fn
tels que toutes les DFs dun mme groupe aient
la mme partie gauche.
tape 3 : Construire les Ri(Xi) avec Xi constitue
de lunion des attributs de Fi.
111
M. Moussi
Normalisation
Exemple1 : soit la relation T(A, B, C, D, E), avec les
DFS lmentaires suivantes : E A, E C,
A B et C D.
lalgorithe prcdent donne les trois relations :
T1(E, A, C), T2(A, B) et T3(C, D).
Exemple 2 : soit la relation R(A, B, C,D, E), avec les
DFS lmentaires suivantes : A B, A C,
C, D E et BD. lalgorithe donne les trois relations :
R1(A,B,C), R2(C,D,E) et R3(B,D)
Exemple1 : soit la relation T(A, B, C, D, E), avec les
DFS lmentaires suivantes : E A, E C,
A B et C D.
lalgorithe prcdent donne les trois relations :
T1(E, A, C), T2(A, B) et T3(C, D).
Exemple 2 : soit la relation R(A, B, C,D, E), avec les
DFS lmentaires suivantes : A B, A C,
C, D E et BD. lalgorithe donne les trois relations :
R1(A,B,C), R2(C,D,E) et R3(B,D)
112
M. Moussi
http://Naj7in.com/fac
Good Luck :)