You are on page 1of 11

Le modle logique des

donnes relationnel
MLD
Le Modle Logique des Donnes (MLD) est une tape
intermdiaire pour passer du modle E/A, qui est un
modle smantique, vers une reprsentation physique
des donnes : fichiers, SGBD hirarchique, SGBD
rseau, SGBD relationnel.
Nous nous limitons au seul MLD relationnel, qui
prpare le passage aux SGBD relationnels.

Modle logique relationnel (bref rappel)

Une table relationnelle correspond un type dentit ou
dassociation du SI (ex: commande, ligne de commande,
client ).
Elle est compose dattributs (colonnes) qui dcrivent ce
type (ex: numro de cde, date de cde ).
Elle possde une cl primaire : ensemble minimum
dattributs qui permet de reprer de manire univoque
chaque n-uplet (ligne) de la table, cest--dire chaque
instance du type.
Ex : Commande (nucom, datcom, adr_livr)
Les liens entre tables sont exprims par les cls
trangres (foreign key).
Une cl trangre est un ensemble d'attributs d'une table
T2 qui est cl primaire dans une table T1.
Exemple :
Client (nocli, nomcli, adrcli)
Commande(nucom, datcom, adrliv, nocli)




Lien vers client
La cl trangre doit correspondre une cl primaire
existante (contrainte dintgrit rfrentielle).
Passage du Modle E/A au MLR
Entit
Toute Entit devient une table dont la cl primaire est
l'identifiant de l'Entit.
Client
Codcli
Nomcli
Adrcli
se traduit par
Client (codcli, nomcli, adrcli)
Association binaire (1/1) - (0/N) ou (1/1) - (1/N)
se traduit en ajoutant une cl trangre (identifiant de
l'entit de cardinalit (0,N) ou (1,N) ) la table provenant de
l'entit dont la cardinalit est (1,1).
Client (codcli, nomcli, adrcli)
Commande (nucom, datcom, adrliv, codcli)
Commande
nucom
datcom
adrlivr
passe
0,N
1,1
Client
codcli
nomcli
adrcli
toujours un seul client
toujours un seul
client (attribut
monovalu)
se traduit
par
Association binaire (1/1) - (0/1)
se traduit en ajoutant une cl trangre (identifiant de
l'entit de cardinalit (0,1) ) la table provenant de
l'entit dont la cardinalit est (1,1).
Dpartement
nudep
nomdep
dirige
0,1 1,1
Employ
nuemp
nomemp
Employ (nuemp, nomemp)
Dpartement (nudep, nomdep, nuemp)
se traduit
par
toujours un seul employ
toujours un seul
employ
Association binaire (0/1) - (0/N) ou (0/1) - (1/N)
Solution 1: idem association (1/1)-(0/N) ou (1/1)-(1/N).
Problme de cl trangre pas toujours dfinie
(certains SGBD supportent, dautres non).
Solution 2: on cre une table ayant pour cl primaire les
2 identifiants. On ajoute les ventuelles proprits de
l'association la table. Plus lourd.
0,1 0,n
Projet
refproj
budget
Employ
nuemp
nomemp
Classer
dateaffect
Employ (nuemp,refproj,nomenp, dateaffect) (solution 1)
Classer(nuemp, refproj, dateaffect) (solution 2)
se traduit par
Association binaire (0/N) ou (1/N) - (0/N) ou (1/N)
se traduit par une nouvelle table dont la cl primaire est
compose des identifiants des deux entits. Les ventuelles
proprits de l'association deviennent les attributs de cette
table.
Classer (nomski, refcomp, rang)
0,n 0,n
Comptition
refcomp
datcomp
Skieur
Nomski
spcialit
Classer
rang
se traduit par
Association n-aire (n>2)
on cre une table ayant pour cl primaire les identifiants
des diffrentes entits de l'association. Les ventuelles
proprits de l'association deviennent les attributs de la
table.
0,n 0,n
Professeur
No_prof
Matire
No_matiere
Assure
codsalle
Classe
No_classe
0,n
Assure (no_classe, no_matiere, no_prof, codsalle)
se traduit par
Ce passage du modle E/A au modle relationnel
rpond des rgles prcises. Il peut tre
automatis.
WinDesign offre cette fonctionnalit de gnration
automatique du modle logique relationnel partir du
MCD (puis du modle logique au modle physique
script SQL de cration de la base)

You might also like