Le modèle Entité/Association

Database Design, Data Modeling · course

Browse all bases de données documents

Le mod le Entit /Association

Mehdi HAJJI

[email protected]

Conception BD II2

Introduction

} Le mod le E/A ou Entit s-Associations est un mod le

conceptuel de donn es de haut niveau (dabstraction).

} Origine : Travaux de Chen (USA), Tardieu(France), en 74/75

} Il permet la structuration des donn es issues du monde r el

sous forme dun ensemble dobjets appel s entit s associ es

entre elles au moyen dun ensemble dassociations.

} Ce mod le utilise un formalisme conventionnel de

repr sentation (diagramme E/A) au moyen duquel on obtient

un mod le conceptuel de donn es (MCD) qui est une

repr sentation graphique de lunivers r el mod lis .

} Ainsi, les concepts du mod le E/A sont d finis de sorte

repr senter au mieux les donn es mod liser telles que

per ues par lusager non informaticien.

Le mod le entit /association

-M. HAJJI-

2

D finitions

Entit

} D finition: Une entit est une chose concr te ou

abstraite de la r alit per ue propos de laquelle on

veut conserver des informations. Une entit a une

existence autonome.

} Exemples: le cin ma ABC, le cin ma le GAUMONT,

lacteur Woody Allen, le film le bonheur est dans le pr

Le mod le entit /association

-M. HAJJI-

3

D finitions

Un attribut

} Un attribut est une caract ristique ou une qualit dune

entit ou dune association. Il peut prendre une (ou

plusieurs) valeur(s).

Une valeur

} Une valeur est un symbole utilis pour repr senter un

fait l mentaire.

Le mod le entit /association

-M. HAJJI-

4

Entit , attribut et valeur

} Exemple dentit avec ses valeurs dattribut:

Nom = Matile

e1

Pr nom = Fran ois, Pierre

Adresse = Gen ve

Date de naissance = 12 novembre 1955

Le mod le entit /association

-M. HAJJI-

5

Entit , attribut et valeur

} Les attributs peuvent tre:

} atomiques.

Ex: Pr nom, nom, &

} compos s.

Ex:

Date de naissance

Jour

Mois

Ann e

} monovalu s (une seule valeur pour une entit donn e).

Ex: Nom, Adresse, Date de naissance.

} multivalu s (plusieurs valeurs pour une entit donn e).

Ex: Pr nom, T l&

Le mod le entit /association

-M. HAJJI-

6

Entit , attribut et valeur

} Dans un processus de mod lisation on ne sint resse pas chaque

entit s par ment mais un type dentit .

} D finition: Un type dentit est la classe de toutes les entit s de la

r alit per ue qui sont de m me nature et qui jouent le m me r le.

} Un type dentit est d crit par:

} un nom

} une d finition qui pr cise la signification que nous voulons retenir de ce

type dentit dans le cadre de la base de donn es.

} une liste dattributs

} Exemple:

} Le type dentit auteur regroupe des personnes auteur darticles de

journaux caract ris es par leur nom, leur pr nom, leur adresse et leur

date de naissance.

} Simplification de la terminologie:

} on appellera entit un type dentit

} on appellera occurrence dune entit un individu particulier faisant partie

de lentit .

Le mod le entit /association

-M. HAJJI-

7

Entit , type dentit

} La description dune entit est appel e le sch ma de

lentit ou lintention de lentit .

} Lensemble des occurrences dune entit qui existent

(dans la base de donn es) un instant particulier

dans le temps sappelle lextension de lentit .

Le mod le entit /association

-M. HAJJI-

8

Entit , type dentit

} Exemple:

SCHEMA

(INTENTION)

AUTEUR

Nom, Pr nom, Adresse, Date de naissance

OCCURRENCES

(EXTENSION)

e1 .

(Matilde, Fran ois Pierre, Gen ve, 12 nov 1955)

e2 .

(Develey, Jacques, Gen ve, 5 jan 1949)

e3 .

(Rossel, Serge, Gen ve, 3 mars 1960)

.

.

.

Le mod le entit /association

-M. HAJJI-

9

Entit : sch ma, intention et

extension

} Remarques:

} Le sch ma dune entit ne va pas changer fr quemment car il

d crit la structure de lentit .

} Lextension peut changer souvent: chaque insertion ou

suppression dune occurrence dentit .

Le mod le entit /association

-M. HAJJI-

10

Type de valeur ou domaine dun

attribut

} D finition: Le type de valeur ou le domaine dun attribut est la

sp cification de toutes les valeurs possibles que peut prendre un

attribut.

} Utilit :

} v rifier la validit dune donn e

} ult rieurement, estimer la place de stockage des donn es

} La sp cification dun type de valeur est donn e soit:

} par la liste des valeurs

} par la propri t que doivent v rifier les valeurs

} Exemples:

} couleur = {rouge, bleu, jaune, vert}

} num ro de journal = entier compris entre 1 et 366

} nom = cha ne de caract res alphab tiques

Le mod le entit /association

-M. HAJJI-

11

Identiant dune entit

} Contrainte: chaque occurrence dune entit doit pouvoir tre

rep r e individuellement et distingu e de toutes les autres >

cest le r le de lidentifiant.

} D finition: On appelle attributs cl ou identifiant dune entit un

groupe minimal dattributs et/ou tel qu chaque combinaison de

valeurs prises par ce groupe correspond au plus une occurence de

cette entit .

} Lidentifiant est form dun ou plusieurs attributs de lentit

identifier.

} Exemples:

} le nom de l diteur est lattribut cl de lentit diteur.

} le nom et le pr nom de lauteur sont les attributs cl de lentit

auteur.

Le mod le entit /association

-M. HAJJI-

12

Repr sentation graphique du sch ma

dune entit selon Chen

} Repr sent e par un rectangle contenant le nom du type

de l'entit et entour e par ses attributs. Lidentifiant (un

ou plusieurs attributs doi(ven)t tre soulign (s).

nom

pr nom

AUTEUR

date de naissance

adresse

jour

mois

ann e

Le mod le entit /association

-M. HAJJI-

13

Application

} Optique: conception dune base de donn es destin e

conserver des descriptions darticles parus dans les journaux.

} R alit per ue:

} Un diteur dite des journaux. Il est caract ris par un nom et une

adresse.

} Un journal est dit par un diteur et publie des articles dans ses

num ros. On conservera le nom du journal et le nom de son

r dacteur en chef.

} Un num ro de journal contient une collection darticles.

} Chaque article paru dans un num ro est sign par un auteur. On

d sire conserver le titre et un r sum de larticle ainsi que le nom

de son auteur.

} Les auteurs sont connus par leur nom, leur pr nom, leur adresse et

leur date de naissance.

Le mod le entit /association

-M. HAJJI-

14

Application

} A partir de l nonc , Enum rez la liste des entit s en

pr cisant pour chacune :

} Le nom, La d finition, la liste dattributs et lidentifiant de

lentit

} Exemple

Pour une entit :

  • un nom
  • une d finition

Ex:

AUTEUR

Un auteur est une personne

qui a crit au moins un article

Paru dans un journal qui

Nous int resse

  • une liste dattributs

Nom auteur, pr nom auteur,

adresse auteur

  • au moins identifiants

(nom auteur, pr nom auteur)

Le mod le entit /association

Mariem FARHAT JAOUANI

-M. HAJJI-

15

16

Application

} Et pour chaque attribut, vous sp cifiez le nom, la

d finition, la structure, le domaine de valeurs et si

lattribut est obligatoire ou non,

Pour un attribut:

  • un nom
  • une d finition
  • une structure (atomique

ou compos , monovalu

ou multivalu )

Advertisement

Ex:

adresse auteur

nom de la ville dans

laquelle r side lauteur

atomique et monovalu

  • Un domaine de valeurs

cha ne de caract res

  • attribut obligatoire ou

facultatif

facultatif

Le mod le entit /association

-M. HAJJI-

16

Association

} D finition: Une association est une correspondance entre

deux ou plusieurs occurrences dentit s propos de laquelle

on veut conserver des informations.

} Lexistence dune association est contingente

lexistence des occurences dentit s quelle met en

correspondance.

} Chaque occurrence dentit joue un r le particulier dans

lassociation.

} On dit aussi que les occurrences dentit s mises en

correspondance par lassociation participent

lassociation

Le mod le entit /association

-M. HAJJI-

17

Association

} Exemple:

} L criture (association) de larticle Lordinateur va-til

changer notre mode de penser? par Gustave Moeckli

exprime la correspondance qui existe entre Gustave

Moeckli et larticle Lordinateur....

} le r le jou par loccurrence de lentit auteur Gustave

Moeckli: il crit larticle Lordinateur...

} le r le jou par loccurrence de lentit article

Lordinateur...: il est crit par Gustave Moeckli.

Le mod le entit /association

-M. HAJJI-

18

Association, type dassociation

} D finition: Un type dassociation est la classe de toutes

les associations possibles de la r alit per ue qui v rifient

la d finition constitutive du type.

} D finition constitutive dun type dassociation (sch ma):

} un nom et une liste dentit s (non n cessairement distinctes)

qui participent au type dassociation avec leurs r les respectifs;

notation: A(ro1: E1,ro2: E2,..., ron: En)

} notation simplifi e: A(E1, E2,..., En)

} une description qui pr cise la signification que nous voulons

retenir de ce type dassociation dans le cadre de la base de

donn es.

Le mod le entit /association

-M. HAJJI-

19

20

Association, type dassociation

} Exemple:

} ECRITURE( crit : AUTEUR, est crit par : ARTICLE)

} Le type dassociation ECRITURE exprime le fait quun

auteur crit un ou plusieurs articles ou, sym triquement,

quun article est crit par un auteur.

} Simplification de la terminologie:

} on appellera association un type dassociation

} on appellera occurrence dassociation toute correspondance

qui existe entre deux ou plusieurs occurrences dentit s.

Le mod le entit /association

-M. HAJJI-

20

Extension dune association

} Lensemble des occurrences dune association qui

existent (dans la base de donn es) un instant

particulier dans le temps sappelle lextension de

lassociation.

Le mod le entit /association

-M. HAJJI-

21

Extension dune association

} Exemple: une extension de lassociation criture

Le mod le entit /association

-M. HAJJI-

22

Repr sentation graphique du sch ma

dune association

} Repr sent es par un losange contenant le nom de

l'association

} Souvent nomm par un verbe ou un substantif

} Les entit s participantes de chaque association sont

rattach es l'association au moyen de lignes continues.

} Chacune de ces lignes est tiquet e par la cardinalit et

les r les des entit s.

Entit 2

R le E2

(min, max)

Nom

assocication

R le E1

(min, max)

Entit 1

Le mod le entit /association

-M. HAJJI-

23

24

Repr sentation graphique du sch ma

dune association

Personne

Propri taire

Poss de

Poss d e

Voiture

Fournisseur

Vend

Produit

Vendeur

Vendu

Le mod le entit /association

-M. HAJJI-

24

Repr sentation graphique du sch ma

dune association

} Le lien (larc) n'est pas orient : les commandes

comportent des produits veut dire galement que les

produits peuvent tre command s.

Commande

Comporte

Poss de

Est command

Produit

Le mod le entit /association

-M. HAJJI-

25

Autre formalisme

} Entit

Nom de la classe

dentit s

} Association

Nom de lassociation

Le mod le entit /association

-M. HAJJI-

26

Autre formalisme

ACTEURS

R LE

R LE

FILMS

JOUE

Le mod le entit /association

-M. HAJJI-

27

Degr dune association

} Degr dune association: nombre dentit s qui participent

une association

} cas fr quent: degr 2 (association binaire) qui relie deux

entit s.

} Exemple : lassociation criture relie les deux entit s

Article et Auteur; elle est dite binaire.

Auteur

Ecrivain

Poss de

A t crit

Article

Le mod le entit /association

-M. HAJJI-

28

Cardinalit d'une association

} One to one

Personne

1

Habite

Habite

1

Adresse

Est habit par

} One to many

Personne

N

Poss de

1

Voiture

Poss de

Est poss d par

} Many to many

Vendeur

N

Vend

Vend

M

Produit

Vendu par

Le mod le entit /association

-M. HAJJI-

29

Cardinalit (min,max)

} But: exprimer le nombre minimum et le nombre

maximum de participations de chaque occurrence

dentit une association.

} Exemple:

} on exprime la contrainte que tous les auteurs doivent crire

au moins un article. On crira min=1 et max=N (N veut dire

nombre ind termin ).

} on exprime la contrainte que tout article doit tre crit par

un et un seul auteur. On crira min=1 et max=1.

Le mod le entit /association

-M. HAJJI-

30

Cardinalit (min,max)

} Plus g n ralement:

} Soit A(ro1: E1, ro2: E2,..., ron: En) une association. La

contrainte de cardinalit de A est d nie par un

ensemble de couple (mini, maxi) 1d i dn.

} Mini: indique le nombre minimum de fois, qu tout

moment toute occurrence de Ei doit assumer le r le roi.

} Maxi: indique le nombre maximum de fois qu tout

moment toute occurrence de Ei peut assumer le r le roi.

Le mod le entit /association

-M. HAJJI-

31

30

Cardinalit (min,max)

Valeur

mini = 0

mini = 1

maxi = k (k>1)

maxi = N

Signification

Toute occurrence de Ei peut exister ind pendamment de A;

on parle de participation partielle de Ei A

aucune occurrence de Ei ne peut exister ind pendamment

de A; on parle de participation totale de Ei A

toute occurrence de Ei assume au plus k fois le r le roi

toute occurrence de E peut assumer un nombre non limit

de fois le r le roi

Advertisement

(min,max)

(0,2)

Personne

conduire

(min,max)

(1,n)

Voiture

Le mod le entit /association

-M. HAJJI-

32

Cardinalit (min,max)

Valeur

mini = 0

mini = 1

maxi = 1

maxi = N

Signification

Toute occurrence de Ei peut exister ind pendamment de A;

on parle de participation partielle de Ei A

aucune occurrence de Ei ne peut exister ind pendamment

de A; on parle de participation totale de Ei A

toute occurrence de Ei assume au plus 1 fois le r le roi

toute occurrence de Ei assume au plus une fois le r le roi

(min,max)

(0,n)

Personne

poss de

(min,max)

(1,1)

Voiture

Le mod le entit /association

-M. HAJJI-

33

Repr sentation graphique

du sch ma dune association

} Exemple: association criture

Une occurrence de lentit auteur a crit au moins une fois

Une occurrence de lentit auteur a crit au plus N fois

Une occurrence de lentit article a t crite au moins une fois

Une occurrence de lentit article a t crite au plus une fois

Le mod le entit /association

-M. HAJJI-

34

Instance de lassociation criture

AT1

AT2

AT3

AT4

Le mod le entit /association

E1

E2

E3

E4

E5

E6

E7

E8

E8

AR1

AR2

AR3

AR4

AR5

AR6

AR7

AR8

-M. HAJJI-

35

Application

} Donnez le r le de chaque entit quelle joue dans

lassociation.

} Expliquez la cardinalit (min, max) de chaque entit en

donnant un exemple et d duire le type de lassociation.

Ville

(1,1)

capitale

(1,1)

Pays

Journaliste

(1,N)

travaille

(1,N)

Journal

Le mod le entit /association

-M. HAJJI-

36

Application

Le mod le entit /association

-M. HAJJI-

37

Application

} Acteurs vers Films : le r le de type 1,N

} (1) un acteur a jou dans au moins un film

} (N) un acteur peut avoir jou dans plusieurs films

} De Films vers Acteurs 0,N:

} (0) : un film nayant pas dacteurs, possible si cest un film

documentaire

} (N) : un film peut avoir plusieurs acteurs

} De Films vers R alisateurs :

} Un film a au moins un r alisateur min=1 dailleurs souvent

} Il y a au plus un r alisateur (max=1). Un film a un seul

r alisateur

Le mod le entit /association

-M. HAJJI-

38

Application

} Selon le sch ma suivant

Est-ce qu:

} un patient peut effectuer

plusieurs visites,

} un m decin peut recevoir

plusieurs patients pendant

la m me consultation,

} un m decin peut prescrire

plusieurs m dicaments lors

d'une m me consultation,

} deux m decins diff rents

peuvent prescrire le m me

m dicament,

Le mod le entit /association

-M. HAJJI-

39

Attributs dune association

} Une association peut avoir ses attributs propres

} Exemple:

} le nombre de m dicament qui a t prescrit dans une

consultation

} Notation:

} Prescrit(prescrit : consultation, a t prescrit :

m dicament, nbrPrise)

Le mod le entit /association

-M. HAJJI-

40

40

Exemple

Code

NbrPrise

Num ro

M dicament

pr scrit

Consultation

Date

Le mod le entit /association

-M. HAJJI-

41

Application

} Sch matisez les associations suivantes:

} Un joueur peut participer dans plusieurs matchs et gagner.

On souhaite enregistrer les matchs jou s et ceux qui ont

t gagn ainsi que le score.

} Un joueur peut participer dans plusieurs matchs, il peut

perdre ou gagner, on souhaite enregistrer le total des

scores des matchs quil a jou s.

} Un joueur peut participer dans plusieurs matchs, on

souhaite enregistrer la date de chaque match jou .

Le mod le entit /association

-M. HAJJI-

42

Identication dune association

} Lidentifiant est implicite.

} Par d finition, une association est identifi e par

lensemble des r les assum s par les entit s quelle met

en correspondance.

} Exemple:

} ECRITURE( crit: AUTEUR, est crit par: ARTICLE)

} Identifiant: ( crit: AUTEUR, est crit par: ARTICLE)

Le mod le entit /association

-M. HAJJI-

43

Cas particulier

} Association (lien) r flexive

} Association entre plusieurs entit s (plus que deux)

} Plusieurs associations entre deux entit s

Le mod le entit /association

-M. HAJJI-

44

Association (lien) r flexive

} Appel e aussi cyclique ou r cursive

} Une association "r flexive" est une association qui lie des

occurrences d'une m me entit entre elles (c'est un cas

particulier de la dimension 2)

} Exemple:

} FILIATION(p re: PERSONNE, fils: PERSONNE) o dans une

occurrence dassociation une personne peut assumer un des

deux r les p re ou fils.

Le mod le entit /association

-M. HAJJI-

45

Repr sentation graphique dune

association r flexive

Est p re de

Personne

pr scrit

Est fils de

Le mod le entit /association

-M. HAJJI-

46

Association entre plusieurs entit s

(plus que deux)

} On peut envisager des associations entre plus de deux

entit s

} M me sil ny a en principe pas de limite sur le degr

dune association, en pratique on ne va jamais au-del

dune association entre trois entit s.

} Quelques difficult s:

} elles sont plus difficiles comprendre, et surtout la

signification des cardinalit s devient beaucoup plus ambigue.

} La d finition des contraintes

Le mod le entit /association

-M. HAJJI-

48

Association entre plusieurs entit s

(plus que deux)

} Exemple: un film peut tre projet dans plusieurs salle

certains horaires diff rentes

} Chaque instance de cette association lie un lm, un

horaire et une salle.

} les cardinalit s sont, implicitement, (0,N). Il nest pas

possible de dire quune entit ne participe quune fois

lassociation.

horaire

Film

projet

Salle

Le mod le entit /association

-M. HAJJI-

49

Association entre plusieurs entit s

(plus que deux)

} elle ne permet pas dimposer certaines contraintes

comme, par exemple, le fait que dans une salle, pour un

horaire donn , il ny a quun seul film. Comme le montre

la figure il est tout fait possible de cr er deux liens

Advertisement

distincts qui sappuient sur le m me horaire et la m me

salle.

Le mod le entit /association

-M. HAJJI-

50

50

Association entre plusieurs entit s

(plus que deux)

} Les associations de degr sup rieur deux sont donc

difficiles manipuler et interpr ter. Il est toujours

possible de remplacer cette association par un type

dentit .

Film

(1,n)

projection

horaire

(1,n)

r alis

(1,1)

S ance

(1,1)

(1,1)

Salle

(1,n)

Seffectue

Le mod le entit /association

-M. HAJJI-

51

Association entre plusieurs entit s

(plus que deux)

} Soit A une association entre les types dentit (E1, E2,

&). La transformation de A en type dentit seffectue en

trois tapes :

1. On attribue un identifiant A.

2. On cr e une association Ai de type (1,n) entre A et

chacun des Ei.

La contrainte minimale, du c t de A , est toujours 1.

3.

Le mod le entit /association

-M. HAJJI-

52

Association entre plusieurs entit s

(plus que deux)

} On reprend l'exemple pr c dent:

} Lassociation projection peut tre transform e en un

type dentit S ance. On lui attribue un identifiant

idSeance et des associations (1,n) avec Film, Horaire et

Salle.

Le mod le entit /association

-M. HAJJI-

53

Autre exemple

Le mod le entit /association

-M. HAJJI-

54

Plusieurs associations entre deux

entit s

} On peut d finir plusieurs associations

entre deux entit s qui vont faire

correspondre diff rentes occurrences

} Exemple: Entre deux entit s personnes

et voiture on peut d finir

} Association poss de qui fait correspondre

Personne

(0,n)

(0,n)

chaque personne aux voitures quils

poss dent

Poss de

Conduit

} Association conduire qui fait correspondre

chaque personne aux diff rentes voitures

quil peut conduire

(1,n)

Voiture

Le mod le entit /association

-M. HAJJI-

55

Exemple

P1

P2

P3

P4

P5

P6

P7

P8

P9

Po1

Po2

Po3

Po4

C1

C2

C3

C4

C5

V1

V2

V3

V4

V5

V6

V7

Le mod le entit /association

-M. HAJJI-

56

Exemple

Le mod le entit /association

-M. HAJJI-

57

Application: est-ce un bon mod le?

} Analyser ce sch ma et discuter

ses cardinalit s.

} Est-ce quun tournoi permet les

matchs de double?

} Est-ce que les joueurs peuvent

gagner des matchs auxquels ils

n'ont pas particip

} Est-ce que deux matchs

diff rents peuvent se d rouler

sur le m me terrain la m me

heure

} pensez vous que ce mod le soit

un bon mod le pour la gestion

d'un tournoi de tennis?

Le mod le entit /association

-M. HAJJI-

58

Application

} Un avion a un num ro d'immatriculation, un type et une localisation (la ville

de l'a roport d'attache de l'avion). Chaque type d'avion est d crit par son

nom (Boeing 747, Airbus A340 ...), son poids, sa capacit et son rayon

d'action.

} Un technicien de la compagnie a un nom, un matricule, une adresse (la ville

de r sidence), un num ro de t l phone, un salaire et est expert sur un ou

plusieurs types d'avion pendant une p riode donn e (date d but et date

fin).

} Un pilote est d crit par les m mes attributs qu'un technicien. De plus il

doit passer un examen m dical annuel.

} Chaque avion doit galement passer un certain nombre de tests de bon

fonctionnement.

} Chaque test a un num ro qui l'identifie, un nom et une valeur minimale (un

seuil atteindre). Nous souhaitons conserver la date et l' tat de chacun

des tests.

} Chaque vol est command par un seul pilote et concerne un seul avion. Un

vol a une ville de d part (ville_dep) une ville d'arriv e (ville_arr) et une

heure de d part (h_dep) une heure d'arriv e (h_arr)

Le mod le entit /association

-M. HAJJI-

59

Application

Le mod le entit /association

-M. HAJJI-

60

Application

} Un diteur dite des journaux. Il est caract ris par un

nom et une adresse.

} Un journal est dit par un diteur et publie des articles

dans ses num ros. On conservera le nom du journal et le

nom de son r dacteur en chef.

} Un num ro de journal contient une collection darticles.

} Chaque article paru dans un num ro est sign par un

auteur. On d sire conserver le titre et un r sum de

larticle ainsi que le nom de son auteur.

} Les auteurs sont connus par leur nom, leur pr nom, leur

adresse et leur date de naissance.

Le mod le entit /association

-M. HAJJI-

61

Application

} A partir de l nonc , Enum rez la liste des associations en

pr cisant pour chacune :

} Le nom, La d finition, la liste des entit s qui participent,

les r les et les cardinalit s et la liste des attributs

} Exemple

Le mod le entit /association

-M. HAJJI-

62

Notion dentit faible

} Certaines entit s dites "faibles" n'existent qu'en r f rence

d'autres entit s dites forte .

} Une entit de type faible, galement appel e entit non

identifi e, poss de une cl locale (appel e identifiant

relatif) qui permet d'identifier une de ses occurrences

parmi l'ensemble des occurrences associ es une

occurrence de l'entit identifiante.

} La cl compl te d'une entit faible est la concat nation

de la cl de l'entit identifiante et de sa cl locale.

Le mod le entit /association

-M. HAJJI-

63

Exemple

} L'entit T che est compl tement d pendante de l'entit

Projet et sa cl locale (No_t che) n'est pas suffisante

l'identifier de fa on absolue.

NomProjet

N t che

N Projet

Projet

(1,n)

contenir

(1,1)

T che

dur eProjet

N Projet

NomT che

} Remarque: La cardinalit du r le de lentit faible au sein

de lassociation est (1,1)

Le mod le entit /association

-M. HAJJI-

64

Contraintes dint grit

} But: sp cifier des propri t s s mantiques du r el per u

qui ne sont pas exprimables avec le mod le E.A.

} D finition: Une contrainte dint grit (C.I.) est une propri t

non repr sent e par les concepts de base du mod le E.A. que

donn es appartenant la base de

doivent satisfaire les

donn es.

} Effet:

limiter les occurrences possibles des

structures

dinformation.

Le mod le entit /association

-M. HAJJI-

70

Contrainte dint grit statique /

dynamique

} Statique: propri t qui doit tre v rifi e tout moment.

} Ex.

} un auteur doit crire au moins un article (cardinalit )

} date de mariage dune personne >date de naissance

Advertisement

} Dynamique: propri t que doit respecter tout

changement d tat de la base de donn es > d finit les

s quences possibles des changements d tat de la BD

} Ex.

} le salaire dun employ ne peut que cro tre

Le mod le entit /association

-M. HAJJI-

71

70

C.I. statiques obligatoires

} Elles compl tent obligatoirement la description dun

sch ma.

} 3 types de C.I. obligatoires : identification, cardinalit ,

attribut obligatoire ou facultatif.

1. Contrainte didentification:

} Toute entit ou association doit avoir un identifiant: il permet

de rep rer de mani re univoque chaque occurrence de ce

type.

2. Contrainte de cardinalit (ou de connectivit ):

} D finit le nombre minimum et le nombre maximum de

participations de chaque occurrence dentit une association.

3. Attribut obligatoire ou facultatif

Le mod le entit /association

-M. HAJJI-

72

71

Notion de sous-typage

} Si lentit F est un sous-type de lentit E, alors toutes les

occurrences de F sont aussi des occurrences de E dont

elles h ritent les attributs et les associations auxquelles

participe E.

} Pour des raisons de simplicit , nous consid rons quune

entit ne peut avoir quun seul sur-type.

} Corollaire: la structure des sous-types constitue une

arborescence.

} La contrainte de sous-typage est d riv e du m canisme

dabstraction de g n ralisation et de sp cialisation

Le mod le entit /association

-M. HAJJI-

73

Exercice 1. Biblioth que

} La Biblioth que d'un syndicat intercommunal consiste en 5 centres

de pr t. Ces centres disposent dordinateurs personnels interconnect s

qui doivent permettre de g rer les emprunts.

} L'interview des biblioth caires permet de d terminer les faits suivants :

} une personne qui s'inscrit la biblioth que verse une caution. Suivant le montant

de cette caution elle aura le droit d'effectuer en m me temps de 1 10

emprunts ;

} les emprunts durent au maximum 15 jours ;

} un livre est caract ris par son num ro dans la biblioth que (identifiant), son

titre, son diteur et son (ses) auteur(s) ;

} on veut pouvoir obtenir, pour chaque abonn les emprunts qu'il a effectu

(nombre, num ro et titre du livre, date de l'emprunt) au cours des trois derniers

mois ;

} toutes les semaines, on dite la liste des emprunteurs en retard : nom et adresse

de labonn , date de l'emprunt, num ro(s) et titre du (des) livre(s) concern (s) ;

} on veut enfin pouvoir conna tre pour chaque livre sa date d'achat, son tat et s'il

est disponible dans quel centre.

Le mod le entit /association

-M. HAJJI-

74

Exercice 1. Biblioth que

Livre

num ro

titre

auteur

centre

diteur

tat

date-achat-jour

date-achat-mois

date-achat-ann e

Emprunt

date-emprunt-jour

date-emprunt-mois

date-emprunt-ann e

date-retour-jour

date-retour-mois

date-retour-ann e

Abonn

num ro

nom

pr nom

caution

adresse-rue

adresse-ville

adresse-NPA

} Contraintes dint grit

} Pour chaque occurrence dEmprunt si la date-retour existe, alors elle doit tre sup rieure

la date-emprunt.

} Pour chaque occurrence de Livre, la date-achat doit tre inf rieure la date-emprunt de

toutes les occurrences dEmprunt qui lui sont li es.

} Pour chaque occurrence de Livre, si l'attribut centre est vide alors la premi re occurrence

de Emprunt qui lui est li e a son attribut date-retour vide, et vice-versa.

Le mod le entit /association

-M. HAJJI-

75

Exercice 2. Editeur

} Un diteur souhaite installer une base de donn es pour

m moriser les informations suivantes :

} les livres sont identifi s par leur num ro ISBN. Un livre poss de un

titre et un prix de vente. Il est crit par un ou plusieurs auteurs.

} Chaque livre est tir en une ou plusieurs ditions, dat es et

identifi es par leur ordre (premi re dition, seconde dition, etc.).

Chaque dition comporte un certain nombre d'exemplaires. Le prix

de vente peut changer d'une dition l'autre.

} Un livre peut tre prim (Goncourt, F mina etc.).

} les auteurs sont identifi s par leur nom et pr noms et peuvent avoir

un pseudonyme. Pour chaque livre, un auteur per oit des droits

d'auteur annuels, calcul s comme un pourcentage des ventes (il est

aussi fonction du nombre d'auteurs).

} les libraires (identifi s par leur nom et adresse compl te)

commandent des livres en pr cisant l dition et le nombre

dexemplaires d sir .

Le mod le entit /association

-M. HAJJI-

76

Exercice 2. Editeur

Auteur

nom

pr noms

pseudonyme

Droits

ann e

montant

Livre

no-ISBN

titre

prix-litt raire-nom

prix-litt raire-pr nom

Paru

Librairie

nom

adresse-rue

adresse-ville

adresse-NPA

Commande

qt

date-jour

date-mois

date-ann e

Edition

num ro

ann e

nb-exempl

prix-vente

Le mod le entit /association

-M. HAJJI-

77

Exercice 3. Les courses de chevaux

} Un parieur assidu des champs de courses et des bases de donn es, voudrait

m moriser dans une base de donn es les courses de chevaux, les paris qu'il a faits

et les r sultats. Plus pr cis ment, il veut enregistrer les informations suivantes pour

chaque course:

}

le nom et la date (exemple: Prix d'Am rique, 21-07-2004)

le num ro, le nom et la cote des chevaux partants (exemple: <1, Salicorne, 20/1>, <2,

Solstice, 8/1>, <3, Samovar, 17/1> ...)

ses paris, avec pour chacun: le type de pari (coupl , tierc , quart , quint ...) la somme

jou e et les num ros de chevaux dans l'ordre du pari (exemple: <tierc , 20 Frs, 13-2-8>)

}

}

} Une fois la course jou e, on enregistre aussi :

}

le r sultat : l'ordre d'arriv e des chevaux (exemple: <1er, 13>, <2 me, 8>, <3 me, 14>, ...)

et les rapports pour chacun des types de pari (exemple: <tierc dans l'ordre, 900 Frs>,

<tierc dans le d sordre : 112 Frs>, <quart dans l'ordre : 5430 Frs>, <quart dans le

d sordre : 750 Frs> ...)

le gain total du parieur pour la course.

}

} Les noms de chevaux sont uniques, et les noms de courses sont uniques ( un

instant donn ).

} Proposer deux diagrammes entit -association, l'un contenant un seul type

d'entit (Course), l'autre en contenant plusieurs (Course, Cheval...) ainsi que des

types d'association. Pr ciser les contraintes d'int grit .

Le mod le entit /association

-M. HAJJI-

78

Exercice 3. Les courses de chevaux

Poss de

Course

nom

date

Concerne

Rapports

montant-ordre

montant-d sordre

type

Participe

num

cote

place-arriv e

Pari

type

somme

Cheval

nom

Contient

Le mod le entit /association

-M. HAJJI-

79

Exercice 3. Les courses de chevaux

} Contraintes dint grit

} Pour chaque valeur de lattribut rapports, la valeur de lattribut

montant-d sordre doit tre inf rieure celle de lattribut

montant-ordre.

} Le domaine de l'attribut type est {"tierc ", "quart ", "quint "}.

} Pour chaque occurrence de Pari, le nombre d'occurrences de

Contient doit tre de 3 si type="tierc ", de 4 si type="quart ",

de 5 si type="quint "

Le mod le entit /association

-M. HAJJI-

80

Exercice 4. Club Vid o

} Dix magasins de location de cassettes vid o se sont regroup s pour mettre en commun les

cassettes dont ils disposent et ont fond un club de location.

} A la suite d'une rencontre avec les repr sentants de ce club, il ressort que chaque point de

vente disposera d'un ordinateur personnel reli un site central et qu'il faudra pouvoir

prendre en compte les l ments suivants:

}

}

}

}

}

}

}

}

}

un client qui s'inscrit au club verse une caution. Suivant le montant de cette caution il aura le droit

d'emprunte...