Introduction aux bases de donn es
Chapitre 1 : Mod le Entit / Association
1. Introduction aux bases de donn es
a. D finition dune base de donn es
Une base de donn es est un ensemble structur de donn es enregistr es sur des supports
accessibles par lordinateur pour satisfaire simultan ment plusieurs utilisateurs de mani re
s lective en un temps opportun.
b. Avantages dune BD
Donn es partag es
Redondance et incoh rence vit es
Transactions g r es
Int grit assur e
S curit appliqu e
Normes appliqu es
Ind pendances des donn es obtenues
Ces informations sont interrog es et mises jour par linterm diaire dun logiciel sp cialis
appel Syst me de Gestion de Bases de Donn es (SGBD). Ce dernier permet dinteragir
avec une BD. Ainsi, il permet de : cr er, mettre jour, interroger, visualiser, administrer,
contr ler, partager des donn es.
c. Conception dune BD
re
tape : Collection des besoins et analyse
1
Collection des besoins des utilisateurs.
Sp cifiques
D taill s
Complets
Analyse du probl me:
On se questionne sur : quelles informations nous voulons stocker?
i me
tape : Analyse conceptuelle
2
Mod lisation des donn es partir des besoins et de l'existant, sous la forme d'un sch ma
conceptuel ( tape d'abstraction) -> Cr ation du sch ma conceptuel bas sur le mod le
Entit -Relation.
Aucune implantation. Il est seulement une repr sentation graphique.
i me
tape : Conception logique
3
Traduction du sch ma conceptuel selon le mod le de base de donn es sous la forme d'un
sch ma logique ( tape automatisable)
i me
4
Optimisation du sch ma logique en un sch ma physique mis en place dans un SGBD-R
tape : Mise en place
1
Introduction aux bases de donn es
Figure 1 : Etapes de conception dune BD
2. Mod le Entit -Association
a. Concepts de base
Advertisement
La repr sentation du mod le entit s-associations sappuie sur trois concepts de base :
Entit ,
Attribut,
Relation.
(cid:1) Entit
Une entit correspond un objet abstrait ou concret que lon per oit de la r alit .
Une entit est un regroupement dobjets qui ont les m mes caract ristiques -> Lentit
permet de mod liser un ensemble dobjets de m me nature.
Exemples : Enseignant, Etudiant, Employ , etc.
(cid:1) Attribut
Un attribut est une caract ristique associ e une entit ou une association.
Remarques :
Un attribut peut tre simple (salaire, prix) ou compos (date : jour, mois, ann e) mais
il doit tre toujours atomique.
Un attribut ne doit pas tre calcul ( ge, dur e, prixTTC).
Un attribut ne doit jamais tre redondant.
Chaque attribut poss de un domaine qui d finit lensemble des valeurs possibles qui
peuvent tre choisies pour lui (entier, cha ne de caract res, bool en&).
Exemple : Le domaine de l'attribut code postal peut tre l'ensemble des entiers positifs
appartenant l'intervalle [1000, 3000].
2
Introduction aux bases de donn es
Le formalisme utilis pour repr senter une entit est le suivant :
Exemple
Deux occurrences de lentit Etudiant.
Figure 2 : Formalise de repr sentation dune entit
Parmi les propri t s dune entit , il existe un sous-ensemble qui joue le r le didentifiant qui
permet de reconna tre sans aucune ambigu t chaque occurrence dune entit .
Deux tudiants peuvent avoir le m me pr nom (nom ou bien date de naissance) par contre
(cid:3)
ils ne peuvent pas avoir le m me num ro
identifiant de lentit Etudiant.
lattribut numEtud est retenu comme
Identifiant
(cid:1) Association (Relation)
Une association d finit un lien s mantique entre une ou plusieurs entit s.
Remarques :
Lensemble des entit s intervenant dans une relation constitue une collection.
Une relation peut tre porteuse ou non de propri t s (attributs). Ces propri t s sont en
d pendance fonctionnelle de deux ou plusieurs identifiants dentit s,
La dimension de la relation est le nombre dentit s entrant dans sa collection. Elle peut
tre binaire, ternaire ou de dimension n.
Exemple :
Une personne poss de un logement.
Relation de dimension 2
Figure 3 : Mod le E/A "Logement"
3
Introduction aux bases de donn es
(cid:1) Cardinalit
Cest un couple de valeurs (minimum, maximum) indiqu lextr mit de chaque lien dune
Advertisement
association. La cardinalit pr cise le nombre de fois minimal et maximal dinterventions
dune entit dans une association. La cardinalit minimale doit tre inf rieure ou gale la
maximale.
Les cardinalit s possibles sont :
0,1 : une occurrence du type-entit peut exister en tant impliqu e soit dans aucune
association soit au maximum dans une seule.
0,n : une occurrence du type-entit peut exister en tant impliqu e soit dans aucune
association soit dans plusieurs associations (sans limite).
1,1 : une occurrence du type-entit ne peut exister que si elle est impliqu e dans
exactement une association.
1,n : une occurrence de type-entit ne peut exister que si elle est impliqu e dans au
moins une association.
Exemple 1 :
Une personne peut tre propri taire dun ou plusieurs logements.
Une personne habite un ou plusieurs logements.
Le logement est habit par une ou plusieurs personnes.
Le logement appartient une seule personne.
La relation est de type plusieurs
plusieurs
1,n
La relation est de type un
plusieurs
Figure 4 : Sch ma E/A "Logement"
Remarque
On veut enregistrer dans la base concevoir la date dhabitation de chaque personne dans
chaque logement.
Ajoute lattribut dateHabitation de chaque personne dans chaque logement, le
sch ma E/A devient comme suit :
Association porteuse de donn es
(cid:4)
Obtenir deux informations
dune m me entit .
Figure 5 : Sch ma E/A "Logement"
(cid:4) Lattribut dateHabitation est un attribut de lassociation habiter, car il d pend la fois des
deux entit s.
4
Introduction aux bases de donn es
Explication :
En pla ant lattribut dateHabitation dans Personne ou dans Logement, nous exprimons
deux choses diff rentes, savoir quune personne nhabite dans un logement qu une seule
date ou quun logement nest pas habit qu une seule date.
Exemple 2 :
Proposer un sch ma dEntit s/Associations relatif aux phrases suivantes :
Un vol a une ville de d part et une ville darriv e.
On veut galement m moriser la distance entre deux villes.
Association r flexive
Figure 6 : Sch ma E/A "Vol"
Exemple 3 :
R aliser le sch ma conceptuel de donn es du texte ci-dessous.
On souhaite g rer la gestion des emprunts des livres. Un livre peut tre emprunt par
Advertisement
plusieurs abonn s, et un abonn peut Emprunter plusieurs livres. On souhaite enregistrer la
date demprunt.
Figure 7 : Sch ma conceptuel de donn es "Emprunt"
(cid:4) Probl me : Si un abonn Emprunte un m me livre deux dates diff rentes, alors
lidentifiant du type- association Emprunter comptera des doublons, ce qui est
impossible.
Figure 8 : Relation Emprunter comporte des doublons
(cid:4) Solution : Pour permettre notre mod le dautoriser un tel emprunt, il faut rajouter un
identifiant dateEmprunt lassociation Emprunter. Pour cela il faut rajouter une
3
entit dateEmprunt avec comme identifiant dateEmp. Ainsi nous obtenons le
mod le entit -association suivant :
me
5
Introduction aux bases de donn es
Relation ternaire
Figure 9 : Mod le E/A permettant lemprunt de livres plusieurs dates
Exemple 4 :
On souhaite g rer le personnel d'une soci t . Chaque membre du personnel a un nom, une
fonction, un salaire, une commission, une date d'entr e dans la soci t . Chaque membre du
personnel travaille dans un d partement caract ris par son nom (commercial, production,
personnel, comptable et recherche) et la ville dans laquelle il se trouve.
A chaque employ correspond un et un seul sup rieur hi rarchique, lui-m me employ ,
lexception du pr sident qui na pas de sup rieur hi rarchique. Un employ peut diriger
dautres employ s.
Figure 10 : Sch ma E/A relatif la gestion demprunt de livres
Exercice 1 :
Le propri taire de plusieurs salles de cin ma d sire informatiser son syst me dinformation
dans le but dautomatiser certains traitements.
Chaque salle est caract ris e par un code unique, un nom, une adresse, une capacit et par le
nom de la ville dans laquelle elle se trouve. Un film peut tre projet dans une ou plusieurs
salles. Il est identifi par une r f rence et caract ris par un nom, une date de cr ation, un
type et par le nom du r alisateur. Pour chaque projection dun film dans une salle on
enregistre le nombre de spectateurs.
La r alisation dun film fait intervenir plusieurs acteurs dont on conna t les codes uniques, les
noms, les pr noms et les adresses. Pour chaque film, on enregistre le r le de chaque acteur.
Travail demand :
Proposer un sch ma conceptuel de donn es (mod le E/A) en se basant sur le texte ci-
dessus.
b. R gles de r alisation dun mod le entit s-associations
La bonne conception dun mod le entit s-associations permet d viter une grande partie des
sources dincoh rences et de redondances. Pour tre bien con u, un mod le entit s-
associations doit respecter certaines r gles.
6
Introduction aux bases de donn es
R gles portant sur les noms
Dans un mod le entit s-associations, le nom dune entit , dune association ou dun attribut
doit tre unique.
Exemple :
Les deux entit s Ecrivain et Abonne doivent tre fusionn s en une unique entit
Advertisement
(cid:4) Factorisation des entit s
R gles de normalisation des attributs
(cid:4) Il faut remplacer un attribut multiple en une association et une entit suppl mentaires.
Exemple :
Probl me :
1. Les attributs en plusieurs exemplaires posent des probl mes d volutivit du mod le,
comment faire si un employ a deux adresses secondaires ?
Remplacer les attributs en plusieurs exemplaires en une association suppl mentaire de
cardinalit s maximales n.
Remarque : On suppose que :
une adresse peut tre habit e par un ou plusieurs employ s.
le num ro de t l phone est poss d par un et un seul employ
il est galement int ressant de d composer les attributs composites comme lattribut
Adresse par exemple. Il est difficile d crire une requ te portant sur la ville o
habitent les employ s si cette information est noy e dans un unique attribut Adresse.
(cid:4) Il ne faut pas ajouter dattribut calculable partir dautres attributs (risque dincoh rence).
Exemple :
7
Introduction aux bases de donn es
2. Les attributs dune association doivent d pendre directement des identifiants de toutes
les entit s de la collection de lassociation.
Exemple :
Par exemple, lattribut quantite de lassociation figurer d pend bien la fois de lidentifiant
n commande et de numeroarticle des entit s de la collection de Figurer.
Une cons quence imm diate de cette r gle est quune association dont la cardinalit
maximale de lune des pattes est 1 ne peut pas poss der dattribut. Si elle en poss dait, ce
serait une erreur de mod lisation et il faudrait les d placer dans lentit connect e la patte
portant la cardinalit maximale de 1.
Exemple :
Une entit avec une cardinalit de 1.1 ou de 0.1 aspire les attributs de lassociation.
3. Un attribut correspondant un type num r est g n ralement remplac par une
entit . Exemple :
Lattribut Type caract rise le type dune mission et peut prendre des valeurs comme :
actualit , culturelle, reportage, divertissement, etc. Le remplacement cet attribut par une entit
permet, dune part, daugmenter la coh rence et dautre part, si les cardinalit s le permettent,
de pouvoir a(cid:1)ecter plusieurs types une m me entit (ex : actualit et culturelle).
(cid:4) Il faut liminer les associations fant mes
c. tapes de conceptions dun mod le entit s-associations
Pour concevoir un mod le entit s-associations, il est n cessaire de passer par une succession
d tapes. Ces tapes sont d crites ci-dessous dans un ordre chronologique.
Recueil des besoins
Tri de linformation (synonyme et redondance)
Identification des entit s
Identification des associations
V rification du mod le.
8