Вы находитесь на странице: 1из 6

LES BASES DE DONNEES AVANCEES

Chapitre2
DEPENDANCES FONCTIONNELLES ET NORMALISATION

1. Introduction
Le but ultime dun concepteur de base de donnes relationnelle est davoir un schma relationnel bien form o chacune des relations contient de linformation sur un et un seul type dentit (Un seul fait dans un seul lien). Pour atteindre ce but un concepteur doit adapter lune des deux approches de conception dune base de donnes relationnelle savoir lapproche synthtique lapproche analytique. Pour modliser une base de donnes en adoptant lapproche synthtique, on utilise le modle Entit/association partit duquel on dduit le schma relationnel. Alors que dans lapproche analytique, on utilise le thorme de normalisation fond sur la notion de dpendance fonctionnelle propose par CODD en 1970. Dans ce chapitre, on va prsenter et dfinir les dpendances fonctionnelles telles quelles sont dfinies par CODD, ainsi que le thorme de normalisation qui a pour but lobtention dun bon schma relationnel en regard des oprations de mise jour des donnes de la base.

2. Les dpendances fonctionnelles (DF)


2.1. Dfinition 1 Intuitivement, on dira quun attribut ou quune liste dattributs Y dpend fonctionnellement dun attribut ou dune liste dattributs X dans une relation R, si tant donn une valeur de X, il ne lui est associ quune seule valeur de Y dans toute extension de R. 2.2. Dfinition 2 Une dpendance fonctionnelle entre deux attributs ou ensemble dattributs X et Y dune relation R(X,Y,Z), note XY,est une fonction qui associe toute valeur de DX (domaine de valeurs de X) une valeur unique de DY (domaine de valeurs de Y). X est dite source de la dpendance. Y est dite but de la dpendance. La rciproque de la dpendance fonctionnelle nest pas forcment vraie. 2.3. Exemple Soit la table relationnelle suivante : Commande Num-com 1 2 3

Date_com 13/05/2004 12/05/2005 03/03/2006

Num-cli 3 5 1

Nom-cli Ali Mohamed Salah

BEN DALY HLAOUI YOUSRA

PAGE 1

LES BASES DE DONNEES AVANCEES

Avec : Num-com : Numro de la commande, Date-com : Date de la commande, Num-cli : Numro du client, Nom-cli : Nom du client, Dans cet exemple la dpendance fonctionnelle Num-com Date-com est vrifie. On dit que Date-com dpend fonctionnellement de Num-com , car pour chaque commande caractrise par Num-com lui correspond une et une seule valeur de Date-com. 2.4. Proprits des dpendances fonctionnelles (Axiomes dAmstrong ) Ces proprits ou axiomes permettent de dfinir de nouvelles dpendances partir dun ensemble initial de dpendances. U dsigne la liste dattributs de la relation R. X, Y et Z sont des attributs ou ensembles dattributs de R. X,Y,Z U. (P1) Reflexivit : Y X X Y X R Y . R (P2) Augmentation : X Y X Z R Y Z . Axiomes dAmstrong R R R (P3) Transitivit : X Y Y Z X Z . R R R (P4) Union : X Y X Z X Y Z . R (P5) Dcomposition : X Y Z Y X R Z . 2.5. Typologies des dpendances fonctionnelles 2.5.1. Dfinition 1 Une dpendance X R Y est triviale si X Y 2.5.2. Dfinition 2 Une dpendance X R Y est lmentaire si pour tout X ' X , la dpendance X ' R Y nest pas vrifie. (Y ne dpend pas dune partie X) 2.5.3. Dfinition 3 Une dpendance X R Y est canonique si la partie droite ne comporte quun seul attribut. 2.5.4. Dfinition 4 Une dpendance X R Y est directe si : i. Elle est lmentaire, ii. Y ne dpend pas transitivement de X. iii. exemple

3. Cl primaire
Une cl dune relation est dfinie comme un ensemble dattributs dont les valeurs permettent de distinguer les n-uplets de la relation.

3.1. Dfinition 1 Un attribut ou une liste dattributs X est une cl pour la relation R(X,Y,Z) si Y Z dpend fonctionnellement de X dans R ; c'est--dire X R Y Z .

BEN DALY HLAOUI YOUSRA

PAGE 2

LES BASES DE DONNEES AVANCEES

3.2. Dfinition 2 X est une cl minimale pour la relation R(X,Y,Z) si X R Y Z est lmentaire. 3.3. Dfinition 3 Une relation R peut avoir plusieurs cls candidates; on choisira une qui sera dite cl primaire de la relation R.

4. Normalisation et formes normales


La normalisation a pour but lobtention dun bon schma relationnel, partir dune relation universelle qui contient tous les attributs dfinissant un cas rel. La normalisation est utile :

pour limiter les redondances de donnes, pour limiter les pertes de donnes, pour limiter les incohrences au sein des donnes et pour amliorer les performances des traitements.

Principe de la normalisation Ce principe repose sur une notion trs simple qui peut se rsumer ainsi Un seul fait dans un seul bien. Dfinition de la normalisation Une relation est dite normalise, si elle vrifie la premire, la deuxime et la troisime forme normale. Les trois formes normales sont lies aux dpendances fonctionnelles. 4.1. Premire forme normale (1NF) Une relation R est dite en premire forme normale, note 1NF, si chacun de ses attributs a un domaine atomique mono - valu. Exemple Soit la relation Client (num-cli, nom-cli, adr-cli). La relation Client nest en 1NF car lattribut adr-cli ne prend pas ses valeurs dun domaine atomique mono-valu. Adrcli est compos dune rue, dun code postal et dune ville donc il prend ses valeurs de trois domaines diffrents. 4.2. Deuxime forme normale (2NF) Une relation R est dite en deuxime forme normale, note 2NF, si: i. elle est en premire forme normale (1NF), ii. tout attribut nappartenant pas la cl de R ne dpend pas seulement dune partie de cette cl

BEN DALY HLAOUI YOUSRA

PAGE 3

LES BASES DE DONNEES AVANCEES

Exemples Soit la relation Stock(num-prod, num-dep, lib-prod, qte-stk). La cl de cette relation est num-prod, nom-dep. Dans cette relation les dpendances suivantes sont vrifies : num prod , num dep Stock qtestk

num prod Stock lib prod Lattribut lib-prod dpend dune partie de la cl qui nest autre que num-prod. Do la relation Stock nest pas en 2NF. Soit la relation Client (num-cli, nom-cli, rue_cli,cod-pos-cli,ville-cli). La cl de cette relation est num-cli. Dans cette relation les dpendances suivantes sont vrifies : num cli client nom cli, rue cli, ville cli Do la relation client est en 2NF car tous ses attributs dpendent de toute la cl et non pas dune partie de cette cl.
4.3. Troisime forme normale (3NF) Une relation R est dite en troisime forme normale, note 3NF, si et seulement si: iii. elle est en deuxime forme normale (2NF), iv. tout attribut nappartenant pas la cl de R ne dpend pas transitivement de cette cl Exemple Soit la relation Commande(num-com, date-com, num-cli, nom-cli). La cl de cette relation est num-com. num com commande date com, num cli, nom cli sont des dpendances O : commande num cli nom cli vrifies dans la relation. La relation commande tant en 2NF et les dpendances num com commande num cli sont vrifies. Do lattribut num_cli dpend commande num cli nom cli transitivement de la cl num-com car : num com commande num cli P 3 num com commande nom cli commande num cli nom cli Donc commande nest pas en 3NF.

5. Normalisation par dcomposition


partir dune relation universelle, on voulait aboutir un bon schma relationnel dont toutes les relations sont normalises c'est--dire elles vrifies les trois formes normales. Afin de normaliser cette une relation, on va adopter la mthode de dcomposition qui consiste dcomposer une relation non normalise pour la rendre normale. Cette dcomposition repose sur la notion des dpendances fonctionnelles.

BEN DALY HLAOUI YOUSRA

PAGE 4

LES BASES DE DONNEES AVANCEES

5.1. Notion de dcomposition 5.1.1. Dfinition Si la dpendance fonctionnelle X R Y est vraie dans une relation R(X,Y,Z), alors R est dcomposable en deux relations R1 (X,Y) et R2(X,Z). Remarques Le processus de dcomposition est rversible car on peut reconstituer la relation initiale par jointure naturelle des relations obtenues par dcomposition. Les dpendances entre donnes sont des contraintes dintgrit dont la dcomposition doit prserver. 5.1.2. Thorme Toute relation a au moins une dcomposition en 3FN qui est sans perte dinformations et qui prserve les dpendances fonctionnelles.

5.2. Algorithme de dcomposition en troisime forme normale Pour toute relation, y compris la relation universelle, il existe donc au moins une dcomposition en troisime forme normale prservant les DF et sans perte. But Convertir un schma de relation qui nest pas en 3FN en un ensemble de schmas de relations en 3NF. Principe Appliquer rcursivement la dfinition de dcomposition nonce ci-dessus, afin de dcomposer une relation non normale jusqu obtenir des relations en 3FN. 5.3. Exercice dapplication Soit la relation universelle suivante : Commande(num_com, date-com, num-cli, nom-cli, ville-cli, num-prod, lib_prod, qtecom) Cette relation vrifie les dpendances fonctionnelles suivantes :
num com commande date com, num cli, nom cli, ville cli (1) num cli commande nom cli, ville cli ( 2) num _ com, num prod commande qte(3) num prod commande lib prod ( 4) Est-ce que la relation commande est en 3NF. Si elle nest pas normale, dcomposer la pour la normaliser.

6. Forme normale de Boyce-Codd


Une relation est en forme normale de Boyce-Codd si et seulement si ses cls candidates sont les uniques sources de DF.

La forme normale de Boyce-Codd est note BCNF (FNBC en franais). Si une relation est en BCNF, elle l'est par dfinition pour toutes ses cls candidates. Si besoin est, on dcompose les attributs ou la relation pour respecter la BCNF.
PAGE 5

BEN DALY HLAOUI YOUSRA

LES BASES DE DONNEES AVANCEES

Exemple Soit la relation Universit(tudiant, matire, enseignant, note) avec les DF

tudiant , matire Universit enseignant , note enseignant Unversit matire


Universit n'est pas en BCNF. Soit la relation Pers(nom, prnom, ge, nombreEnfants) avec la DF
nom , prnom Pers ge, nombreEnfa nts

Pers est en BCNF.

Toutes les DF sont prises en compte par la BCNF. Cependant, la BCNF ne rsout pas tout. Il faut savoir qu'il existe d'autres types de dpendance dont la prise en compte peut encore amliorer la qualit des relations. Notamment, les dpendances multivalues ont permis de dfinir la 4NF et les dpendances de jointure ont donn naissance la 5NF. Leur usage reste cependant plus marginal que celui de la BCNF.

7. Conclusion
Dans ce chapitre, on a introduit les dpendances fonctionnelles, dfinir la normalisation et les trois formes normales ainsi que la notion de dcomposition afin dobtenir un schma relationnel bien bti dont les relations sont en 3NF. En effet, on a prsent la mthode analytique de construction dun schma relationnel.

BEN DALY HLAOUI YOUSRA

PAGE 6

Вам также может понравиться