Vous êtes sur la page 1sur 2

LE MODELE LOGIQUE DES DONNEES (MLD)

M. I.ELKHALKHALI
La description conceptuelle a permis de reprsenter le plus fidlement possible les ralits de
lunivers informatiser. Mais cette reprsentation ne peut pas tre directement manipule et
accepte par un systme informatique. Il est donc ncessaire de passer du niveau conceptuel
un niveau plus proche des capacits des systmes informatiques. Ce niveau, appel niveau
logique,

Le Modle Conceptuel des Donnes est, comme on l'a vu, est exprim dans le formalisme
entit-association. Le Modle Logique des Donnes, quant lui, s'exprime usuellement sous
la forme d'un modle relationnel.

Le passage dun Modle Conceptuel de Donnes (MCD) au Modle Logique des Donnes
(MLD) se fait selon trois rgles de passage.

Nous allons appliquer ces trois rgles en s'appuyant sur le MCD suivant:

Client Commande
NumCli Passe
NumCom
NomCli 0,n 1,1 DateCom
AdrCli
1,n

Contient
QteCom

0,n
Article
NumArt
LibArt

Rgle 1 : Les entits deviennent des tables, l'identifiant de l'entit devient la cl de la table.
Les proprits de l'entit deviennent des attributs.

On obtient donc immdiatement les tables :

CLIENT (numcli, nomcli, adrcli)


COMMANDE (numcom, datcom)
ARTICLE (numart, libart)
Rgle 2 : Quand on trouve une cardinalit 1,1 on ajoute l'identifiant cible la table source.

Ainsi, l'entit COMMANDE possde une association avec des cardinalits 1,1. La table
Commande devient :

COMMANDE (numcom,#numcli , datcom)

La proprit duplique numcli devient cl trangre dans la table source (Commande) et est
marque par un #. Une cl trangre dans une table est une proprit qui est cl primaire dans
une autre table.

Rgle 3 : Une association de la forme x,n -------y,n devient une table part entire dont la cl
est la concatnation des deux identifiants des entits concernes et dont les attributs sont les
proprits (si elles existent) de l'association.

On obtient donc la table supplmentaire suivante :

ARTICLE_COMMANDE (numcom, numart, qtecom)

En dfinitive on aboutit au MLD suivant:

CLIENT (numcli, nomcli, adrcli)

COMMANDE (numcom, #numcli , datcom)

ARTICLE (numart, libart)

ARTICLE_COMMANDE (numcom, numart, qtecom)