ER Relationnel 4p
ER Relationnel 4p
ER Relationnel 4p
Elaboration dun
Modle Logique de Donnes Relationnel
(MLD-R)
Bernard ESPINASSE
Professeur Aix-Marseille Universit (AMU)
1.
Problmatique du MLD-R
2.
3.
4.
5.
Problmatique du MLD
Formalisme graphique de Merise
Drivation dun MLD-R partir dun MCD en Entit-Relation
Cration de tables en langage SQL (cl primaires et trangres)
Dimensionnement dune BD Relationnelle
Problmatique du MLD
MCD
NIVEAU CONCEPTUEL
En formalisme Entit-Relation
En formalisme Merise
MLD (Relationnel)
NIVEAU LOGIQUE
SGBD Relationnel
4
Table
EMPLOYE
EMPLOYE
Appartenir
Matricule
Nom_departement
Nom
Age
Adresse
Matricule
Nom
Age
Adresse
Nom_departement
Effectif
TACHE
Nordre
Nprojet
dure
TACHE
Prcder
PROJET
Concerner
Ntache
Ntache prcdente
Dsignation
Dure
Nprojet
budget
MCD
NIVEAU CONCEPTUEL
En formalisme Entit-Relation
EMPLOYE
EMPLOYE
Matricule
Nom
Age
Adresse
Matricule
Nom
Age
Adresse
Ensemble de rgles
MLD (Relationnel)
NIVEAU LOGIQUE
Table
En formalisme Merise
SGBD Relationnel
10
MCD:
MCD :
EMPLOYE
DEPARTEMENT
appartenir
Matricule
Nom
Age
Adresse
1,N
1,1
PERSONNE
Nom_departement
Effectif
Nom
Prenom
Adresse
MLD :
EMPLOYE
Matricule
Nom_departement
Nom
Age
Adresse
Appartenir
DEPARTEMENT
PERSONNE
Nom_departement
Effectif
MLD :
Nom
Prenom
Adresse
VOITURE
Posseder
Date dacquisition
0,N
P
o
s
s
Posseder e
d
e
r
0,1
Numero
Marque
Type
VOITURE
Numero
Nom
Marque
Type
Date dacquisition
Schmas relationnels :
! PERSONNE (Nom, Prenom, Adresse) ;
! VOITURE (Numro, Nom, Marque, Type, Date_acquisition) ;
Schmas relationnels :
! Table DEPARTEMENT (Nom_departement, Effectif) :
! Table EMPLOYE (Matricule, Nom_departement, Nom, Age, Adresse)
Nom_departement : cl trangre vers table DEPARTEMENT
Bernard ESPINASSE Elaboration dun MLD-R
11
12
MCD :
MCD :
MAISON
EDIFICE
Nedifice
Type
Est-un
1,1
0,1
ENTREPRISE
Nmaison
Adresse
Nentreprise
Adresse
TIERS
Correspondre
0,1
0,1
Ntiers
Type
MLD (solution 1) :
MLD :
Ntiers
Nentreprise
Type
Correspondre
Nentreprise
Adresse
Nmaison
Nedifice
Adresse
Est-un
Nedifice
Type
TIERS
ENTREPRISE
MAISON
EDIFICE
Schmas relationnels :
Schmas relationnels :
! EDIFICE (Nedifice, Type) ;
! MAISON (Nmaison, Ndifice, Adresse).
13
14
MCD :
MCD :
ENTREPRISE
Nentreprise
Adresse
MLD (solution 2) :
ENTREPRISE
Nentreprise
Ntiers
Adresse
Schmas relationnels :
0,1
C
o
r
r
e
s
Correspondrep
o
n
d
r
e
COMMANDE
TIERS
Correspondre
0,1
Ncommande
Date
Statut
Ntiers
Type
ARTICLE
Narticle
0,N Dsignation
Prix
MLD :
TIERS
COMMANDE
Ntiers
Type
Ncommande
Date
Statut
1,N
Porter
Qte-commande
15
PORTER
Ncommande
Narticle
Qte-commande
ARTICLE
Narticle
Dsignation
Prix
Schmas relationnels :
! COMMANDE (Ncommande, Date, Statut) ;
! PORTER (Narticle, Ncommande, Qte_commande) ;
! ARTICLE (Narticle, Dsignation, Prix).
16
MLD
ENTREPRISE
MAISON
Nentreprise
Nom
Adresse
Coordonnes
Date_construction
Surface
O,N
ENTREPRISE
MAISON
Coordonnes
Date_construction
Surface
Nentreprise
Nom
Adresse
O,N
Realiser
REALISER
Date
Montant
Coordonnes
Nentreprise
Ntype_travaux
Date
Montant
O,N
TYPE_TRAVAUX
Ntype_travaux
Dsignation
TYPE_TRAVAUX
Ntype_travaux
Dsignation
17
TACHE
Ntache
Dsignation
Dure
O,N
prcde
MLD :
18
O,1
TRAVAUX
Ntravaux
Dsignation
Dure
O,N
suit
Correspondre
ensemble
Solution 1
TACHE
Ntache
Dsignation
Dure
PRECEDER
Ntache
Ntache_suivante
TRAVAUX
Ntravaux
Dsignation
Dure
TACHE
Ntache
Ntache prcdente
Dsignation
Dure
Schmas relationnels :
Dcomposer
Schmas relationnels :
ensemble
lment
DECOMPOSER
Ntravaux
Ntravaux ensemble
Solution 1 :
! TACHE (Ntche, Dsignation, Dure) ;
! PRCDER (Ntche, Ntche_suivante)
Solution 2 : TACHE (Ntche, Ntche_prcdente, Dsignation, Dure)
Bernard ESPINASSE Elaboration dun MLD-R
lment
Relationnel driv :
Solution 2
Prcder
O,N
19
20
MCD :
Entit-Relation :
PROJET
Nprojet
Nom_projet
TACHE
Comporter
1,1
(R)
1,N
COMMANDE
CLIENT
nclient
nom
age
adresse
type
CA annuel
taux remise
Nordre
Dsignation
1,n
PASSER
1,1
ncommande
date
statut
LIGNE_CMD
1,n
ARTICLE
qt!_cmd!e
qt!_livr!e
prix_unitaire
0,n
0,1
FOURNISSEUR
0,n
FOURNIR
narticle
d!signation
qt! stock
poids
prix d'achat
prix de vente
nfournisseur
nom
adresse
MLD :
PROJET
Relationnel driv :
TACHE
Comporter
Nordre
Nprojet
Dsignation
Nprojet
Nom_projet
COMMANDE
CLIENT
cli_num
cli_nom
cli_age
cli_adresse
cli_type
cli_ca
cli_tremise
relationnels :
Schmas
PASSER
cmd_num
cmd_cli
cmd_date
cmd_statut
FOURNISSEUR
four_num
four_nom
four_adresse
21
LIGNE_CMD
lcd_cmd
lcd_art
lcd_qt
lcd_liv
lcd_pu
FOURNIR
ARTICLE
art_num
art_four
art_nom
art_stock
art_poids
art_pa
art_pv
COMMANDE
cmd_num
cmd_cli
CLIENT
cli_num
cli_nom
cli_age
PASSER
cmd_date
cmd_statut
cli_adresse
cli_type
cli_ca
cli_tremise
FOURNISSEUR
four_num
four_nom
four_adresse
LIGNE_CMD
lcd_cmd
lcd_art
lcd_qt
lcd_liv
lcd_pu
FOURNIR
3 niveaux de normes :
ARTICLE
art_num
art_four
art_nom
art_stock
art_poids
art_pa
art_pv
SQL91 ou SQL2
SQL3 (98) : SQL devient un langage de programmation et volue
vers lobjet
Schmas relationnels :
! CLIENT (cli_num, cli_nom, cli_age, cli_adresse, cli_type, cli_ca, cli_tremise)
! ARTICLE (art_num, art_nom, art_four, art_stock, art_poids, art_pa, art_pv)
! COMMANDE (cmd_num, cmd_cli, cmd_date, cmd_statut)
! LIGNE_CMD (lcd_cmd, lcd_art, lcd_qte, lcd_liv, lcd_pu)
! FOURNISSEUR (four_num, four_nom, four_adresse)
22
23
24
CLIENT
cli_num
cli_nom
cli_age
cli_adresse
cli_type
cli_ca
cli_tremise
COMMANDE
cmd_num
cmd_cli
cmd_date
cmd_statut
Schmas relationnels :
Table CLIENT (cli_num, cli_nom, cli_age, cli_adresse, cli_type, cli_ca, cli_tremise)
- cli_num = cl primaire
NOT NULL : on naccepte pas que lattribut puisse avoir une valeur nulle (valeur
inconnue)
PRIMARY KEY (cli_num): lattribut cli_num est cl primaire de la table Client.
Remarque : un attribut dclar cl primaire doit tre dfini avec l'option NOT NULL
- cmd_num = cl primaire
- cmd_cli, = cl trangre
25
26
27
28
compose
29
30
1,1
voiture
b1
b2
0
mini
3 moyenne
10
maxi
40000
Bernard ESPINASSE Elaboration dun MLD-R
31
32
conduire
r
0,5
voiture
b1
b2
card. mode 1
card. mode 1
card moy = 5/4 = 1,25
d'o:
nb personne x 1,25 = nb voiture x 1,75 soit:
voiture
b1
b2
personne
a1
a2
1000
conduire
1,25
a1
b1 r
r
1,75
715
1250 = n x 1,75
=> n= 1250/1,75
n = 715
33