0% ont trouvé ce document utile (0 vote)
116 vues7 pages

Chapitre 5 - Normalisation - 073528

Transféré par

loicblue86
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
116 vues7 pages

Chapitre 5 - Normalisation - 073528

Transféré par

loicblue86
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Chapitre 5 : Théorie de Normalisation

Compétences visées : l’étudiant sera capable d’utiliser les trois premières formes normales pour
décomposer une relation sans perdre d’informations, à partir de la notion de dépendance fonctionnelle.

SITUATION PROBLEME : Gestion Des Projets


On considère le schéma relationnel et les DF ci-dessous (les attributs sont supposées élémentaires),
concernant la gestion des locations des matériels.
Gest_LOC (numloc, dateLoc, idMat, nomMat, numSalle, nomSalle, qteLoue)
DF1 : numLoc  numSalle DF4 : numSalle  nomSalle
DF2 : (numLoc, idMat) nomEmployé, adresse DF5 : idMat  nomMat
DF3 : numLoc  dateLoc DF6 : numLoc  nomSalle
Consigne :
1. Déterminer la clé de cette relation
2. Identifier une redondance éventuelle ou une anomalie dans cette relation 1pts
3. La relation est-elle en 2FN ? justifier
4. La relation est-elle en 3FN ? justifier
5. Décomposer cette relation en 3ème FN, si possible sans perte d'information ni perte de dépendances
fonctionnelles.
I. PRESENTATION DES CONCEPTS

La conception du schéma relationnel (ou conceptuel) est un processus itératif. Une fois le premier jet
effectué, il faut contrôler le travail effectué à l’aide de 3 règles de bonne conception que l’on appelle « forme
normale ». Autrement dit, la normalisation d’un schéma relationnel suggère une autre méthode pour
obtenir un ensemble de relations. On part d’une relation unique qui contient tous les champs, que l’on
appelle la relation universelle. À l’aide des décompositions proposées par la mise en forme normale et du
graphe des dépendances fonctionnelles des champs de ce e relation, on parvient par raffinements
successifs à un ensemble de relations normalisées. Ce e méthode de la relation universelle est toutefois
assez difficile à manipuler dès que l’on dépasse une taille critique du nombre de champs. En effet, Les
trois premières formes normales et la forme normale dite Boyce Codd ont pour objectif de perme re la
décomposition de relations sans perdre d’informations, à partir de la notion de dépendance fonctionnelle.
L’objectif de ce e décomposition est d’éviter les anomalies dans les bases de données relationnelles à
savoir :

 Problèmes de mise à jour.


 Suppression des redondances d’informations.
 Simplification de certaines contraintes d’intégrité.

Ce qui perme ra d’aboutir à un schéma conceptuel représentant les entités et les associations canoniques
du monde réel.

1) Première Forme Normale (1FN)


a) Rôle

La première forme normale permet simplement d’obtenir des tables rectangulaires sans a ributs
multivalués irréguliers et décomposables.

© Jean Bernard BAKONGA Page 1 sur 7


b)Définition

 Une relation est en première forme normale si tout a ribut contient une valeur atomique (non
divisible).
 Les a ributs ne contiennent pas de valeurs répétitives (mono valué).

c) Exemple : Clients (NumCli, Nom, Prénom, Adresse, Téléphone)

Ce e relation n’est pas en première forme normale, car Adresse n’est pas atomique. En effet de la
représentation de sa table :

On constate un problème d’extraction des sous-chaines, si l’on souhaite extraire les habitants d’une ville
précise. L’a ribut Adresse est décomposable en trois métadonnées : Adresse, code postal et ville. Une
représentation 1FN correcte :

Clients (NumCli, Nom, Prénom, Adresse, CodeP, Ville, Téléphone)

Maintenant, récupérer les habitants d’une ville précise ne pose plus aucun problème, une simple requête
SQL y parviendra de façon rapide et fiable.

2) Deuxième forme normale (2FN)


a) Rôle

La deuxième forme normale permet d’assurer l’élimination de certaines redondances en garantissant


qu’aucun a ribut n’est déterminé seulement par une partie de la clé.

b) Définition

Une relation est en deuxième forme normale si :

 Elle est en première forme normale.


 Si tous les a ributs non-clés ne dépendent pas d’une partie de la clé primaire.

Autrement dit, toute propriété de la relation doit dépendre intégralement de toute la clé.

c) Exemple

Commande (Numcli, CodeArticle, Date, Qté_commandée, Désignation).

Ce e relation est-elle en première forme normale ? Oui.

© Jean Bernard BAKONGA Page 2 sur 7


Est-elle en deuxième forme normale ? Non, car la propriété « Désignation » ne dépend pas intégralement
de la clé (Numcli, CodeArticle, Date).

Soit la représentation du fichier commande suivant :

Commandes :

On constate que l’a ribut « Désignation » ne dépend pas intégralement de la clé, mais plutôt d’une
partie de la clé à savoir « CodeArticle ».

Corriger :

 Commandes (Numcli, CodeArticle, date, Qté_commandée)


 Articles (CodeArticle, Désignation)

3) Troisième forme normale (3FN)


a) Rôle

La troisième forme normale permet d’assurer l’élimination des redondances dues aux dépendances
transitives.

b) Définition

Une relation R est en troisième forme normale si et seulement si :

 Elle est en deuxième forme.


 Tout a ribut n’appartenant pas à une clé ne dépend pas d’un autre a ribut non clé.

Autrement dit, Si toutes les dépendances fonctionnelles par rapport à la clé sont directes (s’il n’y a pas de
DF transitives entre les a ributs non clé).

c) Exemple : dire si la relation Commande ci-dessous est en 3FN

Commande (NuméroCommande, #CodeClient, NomClient, #RefArticle).

 Est-elle en première forme normale ? Oui


 Est-elle en deuxième forme normale ? Oui
 Est-elle en troisième forme normale ? Non !

En effet « Nomclient » dépend d’une propriété non clé : CodeClient. En d’autres termes, dans la relation
Commande, l’a ribut « NomClient » dépend transitivement de la clé primaire ainsi que la propriété
« CodeClient » :

NuméroCommande  CodeClient  NomClient.

© Jean Bernard BAKONGA Page 3 sur 7


Correction de la relation « commande » :

On la décompose en deux nouvelles relations :

 Commande (NuméroCommande, #CodeClient, #RefArticle)


 Clients (CodeClient, Nom client).

Remarque : une relation en 3ème forme normale peut présenter certaines anomalies, en particulier
lorsqu’un a ribut non clé de la relation est source d’une DF ayant pour cible une partie (un sous-ensemble)
de la clé. Et pour pallier à ceci il faut utiliser la forme normale de Boyce Codd

4) Forme normale de Boyce Codd (BCNF)

a) Rôle

Dans la pratique, un schéma relationnel dont toutes les tables sont en 3FN est dit normalisé. Mais dans
certains cas, R. Boyce et E. Frank. Codd ont repéré des faiblesses dans la 3FN. En effet, la 3FN élimine les
redondances liées à la transitivité des DF par rapport à la clé primaire ; mais il peut subsister des
dépendances transitives par rapport à un élément de la clé de la relation si celle-ci est multi-a ribut. Ils
ont donc défini une 3FN, plus restrictive, appelée la Forme Normale de BoyceCodd (FNBC).

Ainsi, rappelons que : La 2e forme normale élimine les anomalies créées par des dépendances entre parties
de clé et a ributs non clé. La 3e forme normale élimine les anomalies créées par des dépendances entre les
a ributs non clés. Et la forme normale de Boyce Codd élimine les redondances crées par des dépendances
entre parties de clés et celles déjà éliminées par la 3e FN.

b) Définition

Une relation est en BCNF si et seulement si :

 Elle est en troisième forme normale.


 Aucun a ribut faisant partie de la clé ne dépend d’un a ribut ne faisant pas partie de la clé
primaire.

En d’autres termes, les seules dépendances fonctionnelles élémentaires sont celles dans lesquelles une clé
entière détermine un a ribut.

c) Transformation d’une relation de la 3FN en FNBC

 Pour passer de la 3FN à la FNBC, il faut diviser chaque relation ne satisfaisant pas aux critères de la
NBC en deux relations.
 Une nouvelle relation sera créée, celle qui répond à la DF nouvelle. Ce e nouvelle relation aura comme
:
 Clé primaire : l’a ribut dont provient la dépendance,
 A ribut(s) : la partie de la clé qui en dépend.
 Et Dans la relation de base, il faudra remplacer la partie de la clé concernée par l’a ribut dont provient
la dépendance (qui est devenu la clé de l’autre relation).

NB : La décomposition se fera ainsi, sans pertes, puisque par jointure, nous retrouverons l’intégralité des
tuples. Par contre, la décomposition en FNBC, bien que normalisée, fait disparaître certaines DF.

La figure 1 suivante illustre le cas typique où un a ribut non clé détermine une partie de clé, et indique
le schéma de décomposition associé.

© Jean Bernard BAKONGA Page 4 sur 7


Figure 1 : Schéma de relation en 3e forme normale mais non en BCNF.

Une telle relation doit être décomposée en R1(K1, K2, X) et R2(Y, K1)

d) Exemple : Considérons la relation :

VACHES (Race, Pays, Région), avec les dépendances fonctionnelles ci-dessous provenant des règles de
gestion du système d’information.

 (Race, Pays) → Région


 Région → Pays.

Ce e relation est bien en troisième forme normale car aucun a ribut non clé ne dépend d’une partie de la
clé ou d’un a ribut non clé. Cependant, on y trouve de nombreuses redondances, par exemple les deux
premières lignes possèdent des pays et des régions identiques.
Afin d’éliminer ces redondances, Boyce et Codd ont introduit une forme normale qui porte leur nom
(Boyce Codd Normal Form/BCNF) : Une relation est en BCNF si et seulement si les seules dépendances
fonctionnelles élémentaires sont celles dans lesquelles une clé détermine un a ribut.

Ainsi, La relation Vaches pourra être décomposée en deux relations :

 RACES (Race, Région)


 RÉGIONS (Région, Pays)
La dépendance fonctionnelle (Race, Pays) → Région est perdue, mais elle peut être recomposée par
jointure. Ce e normalisation est très importante dans la pratique si l’on veut éviter de stocker des
informations redondantes.

NB : On considère, en général, que la troisième forme normale est suffisante dans les cas courants.

Application :

Considérons par exemple la relation : LOCALISATION (CRU, PAYS, REGION, QUALITE), avec les
dépendances :

 CRU, PAYS → REGION


 CRU, PAYS → QUALITE
 REGION → PAYS.

© Jean Bernard BAKONGA Page 5 sur 7


Consigne :
1) Ce e relation est-elle en 3FN ? Justifier
2) Identifier une anomalie ou redondance dans ce e relation
3) Proposer une décomposition de ce e relation

Synthèse

II. RESOLUTION DE LA SITUATION PROBLEME (à faire)


III. ACTIVITES DE CONSOLIDATION :

Situation problème
La base de données suivante accompagnée des dépendances fonctionnelles, décrivent des pièces
employées dans un atelier de montage.

PIÈCE (numPièce, prix, TVA, libellé, catégorie)

Consigne
1) Identifier les redondances éventuelles ainsi que les anomalies
2) Déterminer la ou les clés primaires
3) Déterminer la forme normale
4) Proposer une décomposition en BCNF si possible sans perte d'information ni perte de
dépendances fonctionnelles. Sinon, justifier.

© Jean Bernard BAKONGA Page 6 sur 7


Etudes de cas : Pour chacun des exercices, répondre aux questions suivantes :

- identifier les redondances éventuelles ainsi que les anomalies


- déterminer la ou les clés
- déterminer la forme normale
- proposer une décomposition en BCNF si possible sans perte d'information ni perte de dépendances
fonctionnelles. Sinon, justifier.
Exercice 1 : Commandes

Ensemble de commandes de produits par des clients.

Commande (numCommande, numClient, nomClient, date, numProduit, nomProduit)

Exercice 2 : Employés

Liste d'employés travaillant sur des projets d'un laboratoire.

Employé (numEmployé, numLaboratoire, numProjet, nomEmployé, nomProjet, adresse)

Exercice 3 : Cinéma

Liste de films projetés dans des salles de cinéma.

Cinéma (film, ville, salle, distributeur, délégué)

© Jean Bernard BAKONGA Page 7 sur 7

Vous aimerez peut-être aussi