Académique Documents
Professionnel Documents
Culture Documents
com
Modélisation
Des Bases de Données
Bases de données 1
pour plus de documents : www.almohandiss.com
Bases de données 2
pour plus de documents : www.almohandiss.com
Bases de données 3
pour plus de documents : www.almohandiss.com
Bases de données 4
pour plus de documents : www.almohandiss.com
Bases de données 5
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
• Le modèle E/A est un modèle conceptuel de
haut niveau
• C'est un modèle de données pivot de
méthodes de conception (Merise)
• Elaboré par Chen [Chen 1976]: basé sur la
perception du monde réel
Bases de données 6
pour plus de documents : www.almohandiss.com
Bases de données 7
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
• Exemple:
Entités = { Voiture, Client }
association = { acheter }
attributs = { marque , type, couleur pour Voiture}
{Nom, Prénom, adresse pour Client}
{prix, date pour acheter}
Bases de données 8
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
• Diagramme entité-association du schéma
précédent
Marque Adresse
Voiture Acheter Client
Nom
Couleur
Prix Date NC Prénom
Type NV
Bases de données 9
pour plus de documents : www.almohandiss.com
Différentes représentations
Immat
Voiture
Relation Relation
Bases de données 10
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Exemple: l'Officiel des spectacles
• Je voudrais pouvoir stocker et interroger les
principales informations sur l'officiel des
spectacles;
• Je voudrais savoir quels films passent à Rabat;
• Je voudrais savoir dans quelle salle, à quelle
adresse et à quels horaires;
• Pour chaque film, je voudrais savoir quels sont
les principaux acteurs et le metteur en scène;
Bases de données 11
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
Cinéma
0,n Id
Titre
contient Année
1,1 Horaire
Salle 0,n Séance 0,n
heureDébut
Id Tarif heurefin
Nom
Capacité 0,n
Réalise Artiste
Film 0,1 0,n
Id
Id Nom
Titre Prénom
Année 0,n
Joue 0,n
rôle
Bases de données 12
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
• Très simple !
• Deux concepts entités et associations
• Représentation graphique
• Assez intuitif
• Trop simple !
• Pas adapté aux données complexes
• Difficile d'exprimer des contraintes
Bases de données 13
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Types d'entités
• On regroupe les entités en ensembles
• On les décrit par un type
Bases de données 14
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Que regrouper ? Que séparer ?
• Est-ce qu'on met les films avec les acteurs ? Non: rien
à voir !
• Est-ce qu'on met les acteurs avec les réalisateurs :
oui !
Bases de données 15
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
Impitoyable Hackman
Eastwood
Les pleins pouvoirs Cruise
Bases de données 16
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Comment caractériser une association ?
• Peut-il y avoir plusieurs acteurs dans un film?
Oui => Impitoyable
• Un acteur peut-il jouer dans plusieurs films ?
Oui => Hackman
• Peut-on connaître un acteur sans savoir dans
quels films il joue ? Oui: Cruise
• Peut-on connaître un film sans ses acteurs ? Oui
Bases de données 17
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Cardinalités
• Les réponses aux questions précédents donnent
les cardinalités.
• Un artiste joue dans plusieurs films
• Dans un film il y a plusieurs artistes
Film Artiste
Id 0,N 0,N Id
Titre Joue Nom
Année Prénom
Bases de données 18
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
• Cardinalités :
Les cardinalités principales sont les combinaisons
suivantes :
0, 1 aucun ou un seul
1, 1 un et un seul
0, n aucun ou plusieurs
1, n 1 ou plusieurs
Bases de données 19
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
• La cardinalité est une notion OBLIGATOIRE du modèle
qui permet de résoudre la question de l'anomalie d'une
commande qui aurait pris la liberté de ne pas comporter de
produits.
• C'est donc l'expression d'une CONTRAINTE perçue sur le
monde, et que l'on écrit dans le modèle. Par exemple, "il
n'est pas possible qu'une commande ne concerne aucun
produit".
• Expression d ’une cardinalité :
– Pour une occurrence de cette entité, combien y a-t-il d'occurrences
de l'association auxquelles cette occurrence d'entité participe, au
plus et au moins ?
Bases de données 20
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
• Choix de conception
– Les cardinalités ne sont pas des choix
absolus !!!
• On pourrait contraindre un acteur à apparaître
dans au moins un film
• On pourrait contraindre un film à être lié à au
moins un acteur
il faut se déterminer par rapport aux besoins de
l'application.
Bases de données 21
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Attributs d'une association
• Où placer le nom du rôle ?
Bases de données 22
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Clé d'une association
• On doit pouvoir identifier une association,
comme les entités.
• Un lien film-acteur est caractérisé de manière
unique par :
• le point de départ (un film)
• Le point d'arrivée (un acteur)
– Donc l'identifiant de l'association est la paire (idFilm,
idActeur) !
Bases de données 23
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Représentation d'une association
• Cette association est identifiée par
• le point de départ (un film)
• Le point d'arrivée (un artiste)
– Donc elle est identifiée par la paire (idFilm, idArtiste !)
Film Artiste
Id 0,n Joue 0,n Id
Titre rôle Nom
Année Prénom
Bases de données 24
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Conséquence
• Un acteur ne peut pas jouer DEUX rôles dans un
même film.
Archer
Troy Travolta
Volte-face Cage
Troy
Archer
Bases de données 25
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Associations (suite)
• Il peut y avoir plusieurs types d'associations
entre deux mêmes ensembles
Réalise
Eastwood
Impitoyable
Joue
Bases de données 26
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
Réalise Artiste
Film 0,1 0,n
Id
Id Nom
Titre Prénom
Année 0,n
Joue 0,n
rôle
Bases de données 27
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Association de composition
• Une salle est un composant d'un cinéma
• Si on crée une salle, il faut l'associer à un cinéma
• Si on détruit un cinéma, il faut détruire ses salles
Cinéma
Salle
1,1
0,n Id
Id Titre
Nom contient
Année
Capacité
Bases de données 28
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Identifiant d'une association de composition
• Le composant (la salle) peut être identifié
relativement à son composé (le cinéma)
• Si idCinéma est l'identifiant du cinéma
• Alors (idCinéma, noSalle) est un identifiant possible pour
la salle.
• Avantage: il devient plus facile d'identifier les
salles.
Bases de données 29
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Association généralisée
• On peut associer 2, 3, 4 ... ensembles d'entités.
Horaire
heureDébut
heurefin
Bases de données 30
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Problèmes avec les associations ternaires (ou
plus)
• Difficiles à interpréter
• Qu'est ce qui est autorisé, qu'est ce qui est interdit ?
» Peu de contraintes
• Deux films différents dans la même salle au même
horaire ...
• Autre approche possible: transformer
l'association en entité
Bases de données 31
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– Transformation en entité
Horaire
heureDébut
heurefin
0,n
Salle 1,1
Id 0,n
Séance Film
Nom 1,1
1,1 Id
Capacité Id 0,n
Tarif Titre
Année
Bases de données 32
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
• Une association réflexive
0,n
Employé
ID
Nom Dirige
Service
0,1
Bases de données 33
pour plus de documents : www.almohandiss.com
Le modèle Entité-Association
– En résumé
• Modèle E/A: simple, pratique, employé dans toutes
les méthodes
• Important: savoir interpréter correctement un
schéma E/A qui vous est donné
• Un des mérites essentiel de ce modèle est de
permettre la représentation graphique élégante des
schémas de bases de données
Bases de données 34