Vous êtes sur la page 1sur 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 : Lien vers client Client (nocli, nomcli, adrcli) Commande(nucom, datcom, adrliv, nocli) 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). toujours un seul client
Client codcli nomcli adrcli

Commande
0,N passe 1,1 nucom datcom adrlivr

toujours un seul client (attribut Client (codcli, nomcli, adrcli) monovalu) Commande (nucom, datcom, adrliv, codcli)

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). toujours un seul employ
Employ nuemp nomemp 0,1 1,1 Dpartement nudep nomdep

dirige se traduit par

toujours un seul Employ (nuemp, nomemp) employ Dpartement (nudep, nomdep, nuemp)

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.
Employ nuemp nomemp 0,1 0,n Projet refproj budget

Classer dateaffect

se traduit par

Employ (nuemp,refproj,nomenp, dateaffect) (solution 1) Classer(nuemp, refproj, dateaffect) (solution 2)

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.
Skieur Nomski spcialit 0,n Classer rang 0,n Comptition refcomp datcomp

se traduit par

Classer (nomski, refcomp, rang)

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.
Classe No_classe 0,n Matire No_matiere 0,n
Assure codsalle

0,n

Professeur

No_prof

se traduit par Assure (no_classe, no_matiere, no_prof, codsalle)

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)

Vous aimerez peut-être aussi