Vous êtes sur la page 1sur 15

Modèle logique

Passage au niveau logique

 Le niveau logique (relationnel) est Intermédiaire entre le


modèle conceptuel et le modèle physique des données.
 Il donne la représentation des tables telles qu'elles seront dans
la base de données.
 Le niveau logique n'est pas impacté par le système de bases de
données utilisé.
 Nous présenterons les structures ainsi :
Table[cle_primaire,champ_1, …, champ_N, cle_etrangere#]

Prof. Asmaa El Hannani 2ITE-S1 290

1
Clé primaire et clé étrangère: Rappel
 Une clé primaire est une contrainte d'unicité qui permet
d'identifier de manière unique un enregistrement dans une table. Une
clé primaire peut être composée d'un ou de plusieurs attributs de la
table.

 Une clé étrangère identifie une colonne ou un ensemble de colonnes


d'une table comme référençant une colonne ou un ensemble de
colonnes d'une autre table (la table référencée)
 Les colonnes de la table référencée doivent faire partie d'une contrainte
de clé primaire ou d'une contrainte d'unicité

 L'ensemble constitué d'une clé primaire et d'une clé étrangère sert à


établir des relations entre tables.

Prof. Asmaa El Hannani 2ITE-S1 291

Passage au niveau logique

 Nous donnons ci-après quatre règles (de R1 à R4) pour


traduire un schéma conceptuel Merise ou UML en un schéma
logique (relationnel) équivalent.

 Il existe d’autres solutions de transformation, mais ces règles


sont les plus simples et les plus opérationnelles.

Prof. Asmaa El Hannani 2ITE-S1 292

2
Règle 1 (Transformation d’entités/classes)

 Chaque entité devient une relation. L’identifiant de l’entité


devient clé primaire pour la relation.
 Chaque classe du diagramme UML devient une relation. Il faut
choisir un attribut de la classe pouvant jouer le rôle
d’identifiant.
 Si aucun attribut ne convient en tant qu’identifiant, il faut en
ajouter un de telle sorte que la relation dispose d’une clé
primaire (les outils proposent l’ajout de tels attributs).

Prof. Asmaa El Hannani 2ITE-S1 293

Règle 1 (Transformation d’entités/classes)

Merise UML

Avion[immat, typeav]
R1
Compagnie[ncomp, nomcomp]

Prof. Asmaa El Hannani 2ITE-S1 294

3
Règle 2 (Associations un-à-plusieurs)

 Il faut ajouter un attribut de type clé étrangère dans la relation


fils de l’association:
 la relation dérivée de l’entité ayant la « multiplicité plusieurs »
dans le modèle UML .
ou
 la relation dérivée de l’entité ayant la « cardinalité un » dans le
modèle Merise.

 L’attribut porte le nom de la clé primaire de la relation père de


l’association.

Prof. Asmaa El Hannani 2ITE-S1 295

Règle 2 (Associations un-à-plusieurs)

Avion[immat, typeav, ncomp#]


R1 et R2
Compagnie[ncomp, nomcomp]

Prof. Asmaa El Hannani 2ITE-S1 296

4
Règle 3
(Associations plusieurs-à-plusieurs et n-aires)
 L’association ou classe-association devient une relation dont la
clé primaire est composée par la concaténation des identifiants
des entités (classes) connectés à l’association.
 Ces attributs devient alors des clés étrangères.

 Les attributs de la classe-association doivent être ajoutés à la


nouvelle relation. Ces attributs ne sont ni clé primaire, ni clé
étrangère.

Prof. Asmaa El Hannani 2ITE-S1 297

Règle 3
(Associations plusieurs-à-plusieurs)

R1 et R3
Avion[immat, typeav]

Affreter[immat#,ncomp#, dateaff]

Compagnie[ncomp, nomcomp]

Prof. Asmaa El Hannani 2ITE-S1 298

5
Règle 4 (Associations un-à-un)

 Il faut ajouter un attribut clé étrangère dans la relation dérivée de


l’entité ayant la multiplicité minimale égale à zéro pour UML (ou
cardinalité minimale égale à 1 pour Merise).

 La clé étrangère est la clé primaire de la relation dérivée de l’autre


entité (classe) connectée à l’association.

 Si les deux cardinalités (multiplicités) minimales sont à zéro, le


choix est donné entre les deux relations dérivées de la règle R1.

 Si les deux cardinalités minimales sont à un, il est sans doute


préférable de fusionner les deux entités (classes) en une seule.

Prof. Asmaa El Hannani 2ITE-S1 300

Règle 4 (Associations un-à-un)

Stage[nstage, entreprise]
R1 et R4
Etudiant[netu, nometu, nstage#]

Prof. Asmaa El Hannani 2ITE-S1 301

6
Exercice 4

Donnez les modèle logique des schémas suivants:

Personne Adresse
A. Reside
ID 0,1 0,N ID
Nom Rue
Prenom CP
Ville

B. Personne Adresse
ID 0,N Réside 0,N ID
Nom Rue
Prenom Date_emmen CP
Ville

Prof. Asmaa El Hannani 2ITE-S1 302

Associations réflexives

 Un-à-plusieurs

Prof. Asmaa El Hannani 2ITE-S1 304

7
Associations réflexives

 Plusieurs-à-plusieurs

Prof. Asmaa El Hannani 2ITE-S1 305

Héritage

 Il existe trois méthodes de décomposition pour traduire une


association d'héritage :
 La décomposition par distinction (une table par entité ou classe)

 La décomposition descendante (une table par sous-entité ou sous-


classe)

 La décomposition ascendante (une table par sur-entité ou sur-


classe)

Prof. Asmaa El Hannani 2ITE-S1 306

8
La décomposition par distinction
 Il faut transformer chaque sous-classe en une relation.
 La clé primaire de la classe mère devient à la fois clé primaire et clé
étrangère des sous-classes.

Prof. Asmaa El Hannani 2ITE-S1 307

La décomposition descendante

 Il faut alors faire migrer tous les attributs de la classe mère


dans les relations issues des sous-classes.

Prof. Asmaa El Hannani 2ITE-S1 308

9
La décomposition ascendante

 Il faut supprimer les relations issues des sous-classes et faire migrer


les attributs dans la relation issue de la classe mère.

Prof. Asmaa El Hannani 2ITE-S1 309

Exercice 5

Donnez le modèle logique du schéma suivant:

Poste
nserie
typeposte

{Complete, disjoint}

Client Serveur
adr_IP nomserv
masque disque

Prof. Asmaa El Hannani 2ITE-S1 310

10
Contraintes

 Certaines contraintes peuvent se traduire au niveau logique,


d'autres au niveau physique.
 Il existe plusieurs façons de prendre en comptes les
contraintes, cela dépend de la contrainte et du type
d'association.
 Certaines contraintes nécessitent l'utilisation de triggers, nous
considérerons que nous ne les prenons pas en compte dans ce
cours.

Prof. Asmaa El Hannani 2ITE-S1 314

Contraintes

Exemple de prise en compte :

Contrainte Logique Physique


Fusion des tables avec
Exclusivité (X) Le champ indicateur NULL
champ indicateur
Fusion des tables avec
Totalité (T) Le champ indicateur NOT NULL
champ indicateur
Fusion des tables avec
Partition (XT) Le champ booléen NOT NULL
champ booléen
Fusion des tables avec
Inclusion (I) Les champs inclus sont NULL
champs NULL
Simultanéité (S) Fusion des 2 tables Les champs sont NOT NULL

Unicité (U) Indexe unique

Prof. Asmaa El Hannani 2ITE-S1 315

11
Contraintes

Exemple avec la contrainte d'exclusivité :


0,N
Personne 0,N Possede Adresse

0,N Loue 0,N

Personne [idp, nom, prenom, date_naiss]


Adresse [ida, voie, cp, ville]
Dispose [idp#, ida#, ind_loue]
Le champ ‘ind_loue' pourra prendre les valeurs :
'L' : locataire, 'P' : propriétaire, NULL : pas précisé

Prof. Asmaa El Hannani 2ITE-S1 316

Exercice 6

 Donner le modèles logique de l’exercices 2.

Prof. Asmaa El Hannani 2ITE-S1 318

12
Modèle Physique

Niveau physique

 Le Modèle Physique de Données est la représentation exacte


de la base de données.
 Il est liée au système utilisé.
 Il peut être obtenu automatiquement par des outils mais il
correspond rarement au besoin.
 Il peut permettre de créer automatiquement la base de données
par des outils en générant le code SQL correspondant.
 Par exemple en utilisant phpMyAdmin

Prof. Asmaa El Hannani 2ITE-S1 320

13
Passage au niveau physique

 Les tables sont les éléments du MPD.


 Comme pour le modèle logique
 Une table doit contenir une clé primaire permettant d'identifier de
façon unique l'occurrence de la table.

 Une table peut contenir une ou des clé étrangère permettant de la


lier à une autre table.

 En plus les attributs sont typés.


 Les types de données peuvent varier selon les système de base
de données.

Prof. Asmaa El Hannani 2ITE-S1 321

Passage au niveau physique

 Nous présenterons les structures soit par:

Table [cle_primaire: type,champ1:type, … champN:type, cle_etrangere#:type]

Ou

Table
Cle_primaire type
champ1 type

champN type
Cle_etranger# type

Prof. Asmaa El Hannani 2ITE-S1 322

14
Passage au modèle physique (exemple1)

Prof. Asmaa El Hannani 2ITE-S1 323

Passage au modèle physique (exemple2)

Prof. Asmaa El Hannani 2ITE-S1 324

15

Vous aimerez peut-être aussi