Vous êtes sur la page 1sur 15
Modèle logique

Modèle logique

Passage au niveau logique  Le niveau logique (relationnel) est Intermédiaire entre le modèle conceptuel

Passage au niveau logique

Passage au niveau logique  Le niveau logique (relationnel) est Intermédiaire entre le modèle conceptuel et
Passage au niveau logique  Le niveau logique (relationnel) est Intermédiaire entre le modèle conceptuel et
Passage au niveau logique  Le niveau logique (relationnel) est Intermédiaire entre le modèle conceptuel et
Passage au niveau logique  Le niveau logique (relationnel) est Intermédiaire entre le modèle conceptuel et

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

Clé primaire et clé étrangère: Rappel  Une clé primaire est une contrainte d'unicité qui

Clé primaire et clé étrangère: Rappel

Clé primaire et clé étrangère: Rappel  Une clé primaire est une contrainte d'unicité qui permet
Clé primaire et clé étrangère: Rappel  Une clé primaire est une contrainte d'unicité qui permet
Clé primaire et clé étrangère: Rappel  Une clé primaire est une contrainte d'unicité qui permet
Clé primaire et clé étrangère: Rappel  Une clé primaire est une contrainte d'unicité qui permet

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

Passage au niveau logique

Passage au niveau logique  Nous donnons ci-après quatre règles (de R1 à R4) pour traduire
Passage au niveau logique  Nous donnons ci-après quatre règles (de R1 à R4) pour traduire
Passage au niveau logique  Nous donnons ci-après quatre règles (de R1 à R4) pour traduire
Passage au niveau logique  Nous donnons ci-après quatre règles (de R1 à R4) pour traduire

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

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

Règle 1 (Transformation d’entités/classes)  Chaque entité devient une relation. L’identifiant de l’entité
Règle 1 (Transformation d’entités/classes)  Chaque entité devient une relation. L’identifiant de l’entité
Règle 1 (Transformation d’entités/classes)  Chaque entité devient une relation. L’identifiant de l’entité
Règle 1 (Transformation d’entités/classes)  Chaque entité devient une relation. L’identifiant de l’entité

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)

Règle 1 (Transformation d’entités/classes) Merise UML R1 Avion[ immat , typeav] Compagnie[ ncomp , nomcomp] Prof.
Règle 1 (Transformation d’entités/classes) Merise UML R1 Avion[ immat , typeav] Compagnie[ ncomp , nomcomp] Prof.
Règle 1 (Transformation d’entités/classes) Merise UML R1 Avion[ immat , typeav] Compagnie[ ncomp , nomcomp] Prof.
Règle 1 (Transformation d’entités/classes) Merise UML R1 Avion[ immat , typeav] Compagnie[ ncomp , nomcomp] Prof.
Merise UML R1
Merise
UML
R1

Avion[immat, typeav]

Compagnie[ncomp, nomcomp]

Prof. Asmaa El Hannani

2ITE-S1

294

Règle 2 (Associations un-à-plusieurs)  Il faut ajouter un attribut de type clé étrangère dans

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

Règle 2 (Associations un-à-plusieurs)  Il faut ajouter un attribut de type clé étrangère dans la
Règle 2 (Associations un-à-plusieurs)  Il faut ajouter un attribut de type clé étrangère dans la
Règle 2 (Associations un-à-plusieurs)  Il faut ajouter un attribut de type clé étrangère dans la
Règle 2 (Associations un-à-plusieurs)  Il faut ajouter un attribut de type clé étrangère dans la

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) R1 et R2 Avion[ immat , typeav, ncomp#] Compagnie[ ncomp ,

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

Règle 2 (Associations un-à-plusieurs) R1 et R2 Avion[ immat , typeav, ncomp#] Compagnie[ ncomp , nomcomp]
Règle 2 (Associations un-à-plusieurs) R1 et R2 Avion[ immat , typeav, ncomp#] Compagnie[ ncomp , nomcomp]
Règle 2 (Associations un-à-plusieurs) R1 et R2 Avion[ immat , typeav, ncomp#] Compagnie[ ncomp , nomcomp]
Règle 2 (Associations un-à-plusieurs) R1 et R2 Avion[ immat , typeav, ncomp#] Compagnie[ ncomp , nomcomp]
Règle 2 (Associations un-à-plusieurs) R1 et R2 Avion[ immat , typeav, ncomp#] Compagnie[ ncomp , nomcomp]
R1 et R2
R1 et R2

Avion[immat, typeav, ncomp#]

un-à-plusieurs) R1 et R2 Avion[ immat , typeav, ncomp#] Compagnie[ ncomp , nomcomp] Prof. Asmaa El

Compagnie[ncomp, nomcomp]

Prof. Asmaa El Hannani

2ITE-S1

296

Règle 3 (Associations plusieurs-à-plusieurs et n-aires)  L’association ou classe -association devient une relation

Règle 3 (Associations plusieurs-à-plusieurs et n-aires)

Règle 3 (Associations plusieurs-à-plusieurs et n-aires)  L’association ou classe -association devient une relation
Règle 3 (Associations plusieurs-à-plusieurs et n-aires)  L’association ou classe -association devient une relation
Règle 3 (Associations plusieurs-à-plusieurs et n-aires)  L’association ou classe -association devient une relation
Règle 3 (Associations plusieurs-à-plusieurs et n-aires)  L’association ou classe -association devient une relation

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[

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

Règle 3 (Associations plusieurs-à-plusieurs) R1 et R3 Avion[ immat , typeav] Affreter[immat#,ncomp#, dateaff] Compagnie[
Règle 3 (Associations plusieurs-à-plusieurs) R1 et R3 Avion[ immat , typeav] Affreter[immat#,ncomp#, dateaff] Compagnie[
Règle 3 (Associations plusieurs-à-plusieurs) R1 et R3 Avion[ immat , typeav] Affreter[immat#,ncomp#, dateaff] Compagnie[
Règle 3 (Associations plusieurs-à-plusieurs) R1 et R3 Avion[ immat , typeav] Affreter[immat#,ncomp#, dateaff] Compagnie[
R1 et R3
R1 et R3

Avion[immat, typeav]

plusieurs-à-plusieurs) R1 et R3 Avion[ immat , typeav] Affreter[immat#,ncomp#, dateaff] Compagnie[ ncomp , nomcomp]

Affreter[immat#,ncomp#, dateaff]

R3 Avion[ immat , typeav] Affreter[immat#,ncomp#, dateaff] Compagnie[ ncomp , nomcomp] Prof. Asmaa El Hannani 2

Compagnie[ncomp, nomcomp]

Prof. Asmaa El Hannani

2ITE-S1

298

Règle 4 (Associations un-à-un)  Il faut ajouter un attribut clé étrangère dans la relation

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

Règle 4 (Associations un-à-un)  Il faut ajouter un attribut clé étrangère dans la relation dérivée
Règle 4 (Associations un-à-un)  Il faut ajouter un attribut clé étrangère dans la relation dérivée
Règle 4 (Associations un-à-un)  Il faut ajouter un attribut clé étrangère dans la relation dérivée
Règle 4 (Associations un-à-un)  Il faut ajouter un attribut clé étrangère dans la relation dérivée

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)

Règle 4 (Associations un-à-un) R1 et R4 Stage[ nstage , entreprise] Etudiant[ netu , nometu, nstage#]
Règle 4 (Associations un-à-un) R1 et R4 Stage[ nstage , entreprise] Etudiant[ netu , nometu, nstage#]
Règle 4 (Associations un-à-un) R1 et R4 Stage[ nstage , entreprise] Etudiant[ netu , nometu, nstage#]
Règle 4 (Associations un-à-un) R1 et R4 Stage[ nstage , entreprise] Etudiant[ netu , nometu, nstage#]
R1 et R4
R1 et R4

Stage[nstage, entreprise]

(Associations un-à-un) R1 et R4 Stage[ nstage , entreprise] Etudiant[ netu , nometu, nstage#] Prof. Asmaa

Etudiant[netu, nometu, nstage#]

Prof. Asmaa El Hannani

2ITE-S1

301

Exercice 4

Exercice 4 Donnez les modèle logique des schémas suivants: Personne Adresse A. ID Reside ID 0,1
Exercice 4 Donnez les modèle logique des schémas suivants: Personne Adresse A. ID Reside ID 0,1
Exercice 4 Donnez les modèle logique des schémas suivants: Personne Adresse A. ID Reside ID 0,1
Exercice 4 Donnez les modèle logique des schémas suivants: Personne Adresse A. ID Reside ID 0,1
Donnez les modèle logique des schémas suivants: Personne Adresse A. ID Reside ID 0,1 0,N
Donnez les modèle logique des schémas suivants:
Personne
Adresse
A.
ID
Reside
ID
0,1
0,N
Nom
Rue
Prenom
CP
Ville
B. Personne
Adresse
ID
Réside
ID
0,N
0,N
Nom
Rue
Prenom
Date_emmen
CP
Ville

Prof. Asmaa El Hannani

2ITE-S1

302

Associations réflexives

Associations réflexives  Un-à-plusieurs Prof. Asmaa El Hannani 2 I T E - S 1 3
Associations réflexives  Un-à-plusieurs Prof. Asmaa El Hannani 2 I T E - S 1 3
Associations réflexives  Un-à-plusieurs Prof. Asmaa El Hannani 2 I T E - S 1 3
Associations réflexives  Un-à-plusieurs Prof. Asmaa El Hannani 2 I T E - S 1 3

Un-à-plusieurs

Associations réflexives  Un-à-plusieurs Prof. Asmaa El Hannani 2 I T E - S 1 3

Prof. Asmaa El Hannani

2ITE-S1

304

Associations réflexives

Associations réflexives  Plusieurs-à-plusieurs Prof. Asmaa El Hannani 2 I T E - S 1 3
Associations réflexives  Plusieurs-à-plusieurs Prof. Asmaa El Hannani 2 I T E - S 1 3
Associations réflexives  Plusieurs-à-plusieurs Prof. Asmaa El Hannani 2 I T E - S 1 3
Associations réflexives  Plusieurs-à-plusieurs Prof. Asmaa El Hannani 2 I T E - S 1 3

Plusieurs-à-plusieurs

Associations réflexives  Plusieurs-à-plusieurs Prof. Asmaa El Hannani 2 I T E - S 1 3

Prof. Asmaa El Hannani

2ITE-S1

305

Héritage  Il existe trois méthodes de décomposition pour traduire une association d'héritage : 

Héritage

Héritage  Il existe trois méthodes de décomposition pour traduire une association d'héritage :  La
Héritage  Il existe trois méthodes de décomposition pour traduire une association d'héritage :  La
Héritage  Il existe trois méthodes de décomposition pour traduire une association d'héritage :  La
Héritage  Il existe trois méthodes de décomposition pour traduire une association d'héritage :  La

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

La décomposition par distinction  Il faut transformer chaque sous-classe en une relation.  La

La décomposition par distinction

La décomposition par distinction  Il faut transformer chaque sous-classe en une relation.  La clé
La décomposition par distinction  Il faut transformer chaque sous-classe en une relation.  La clé
La décomposition par distinction  Il faut transformer chaque sous-classe en une relation.  La clé
La décomposition par distinction  Il faut transformer chaque sous-classe en une relation.  La clé

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.

devient à la fois clé primaire et clé étrangère des sous-classes. Prof. Asmaa El Hannani 2

Prof. Asmaa El Hannani

2ITE-S1

307

La décomposition descendante  Il faut alors faire migrer tous les attributs de la classe

La décomposition descendante

La décomposition descendante  Il faut alors faire migrer tous les attributs de la classe mère
La décomposition descendante  Il faut alors faire migrer tous les attributs de la classe mère
La décomposition descendante  Il faut alors faire migrer tous les attributs de la classe mère
La décomposition descendante  Il faut alors faire migrer tous les attributs de la classe mère

Il faut alors faire migrer tous les attributs de la classe mère dans les relations issues des sous-classes.

de la classe mère dans les relations issues des sous-classes. Prof. Asmaa El Hannani 2 I

Prof. Asmaa El Hannani

2ITE-S1

308

La décomposition ascendante  Il faut supprimer les relations issues des sous-classes et faire migrer
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

Contraintes

Contraintes  Certaines contraintes peuvent se traduire au niveau logique, d'autres au niveau physique.  Il
Contraintes  Certaines contraintes peuvent se traduire au niveau logique, d'autres au niveau physique.  Il
Contraintes  Certaines contraintes peuvent se traduire au niveau logique, d'autres au niveau physique.  Il
Contraintes  Certaines contraintes peuvent se traduire au niveau logique, d'autres au niveau physique.  Il

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

 

Exclusivité (X)

Fusion des tables avec champ indicateur

Le champ indicateur NULL

Totalité (T)

Fusion des tables avec champ indicateur

Le champ indicateur NOT NULL

Partition (XT)

Fusion des tables avec champ booléen

Le champ booléen NOT NULL

Inclusion (I)

Fusion des tables avec champs NULL

Les champs inclus sont NULL

Simultanéité (S)

Fusion des 2 tables

Les champs sont NOT NULL

Unicité (U)

 

Indexe unique

Prof. Asmaa El Hannani

2ITE-S1

315

Contraintes Exemple avec la contrainte d'exclusivité : 0,N Personne 0,N Possede Adresse X 0,N Loue
Contraintes
Exemple avec la contrainte d'exclusivité :
0,N
Personne
0,N
Possede
Adresse
X
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
Modèle Physique

Modèle Physique

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

Niveau physique

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

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

Passage au niveau physique  Les tables sont les éléments du MPD.  Comme pour

Passage au niveau physique

Passage au niveau physique  Les tables sont les éléments du MPD.  Comme pour le
Passage au niveau physique  Les tables sont les éléments du MPD.  Comme pour le
Passage au niveau physique  Les tables sont les éléments du MPD.  Comme pour le
Passage au niveau physique  Les tables sont les éléments du MPD.  Comme pour le

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

Passage au niveau physique

Passage au niveau physique  Nous présenterons les structures soit par: Table [ cle_primaire: type ,champ1
Passage au niveau physique  Nous présenterons les structures soit par: Table [ cle_primaire: type ,champ1
Passage au niveau physique  Nous présenterons les structures soit par: Table [ cle_primaire: type ,champ1
Passage au niveau physique  Nous présenterons les structures soit par: Table [ cle_primaire: type ,champ1

Nous présenterons les structures soit par:

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

Ou

Table

Cle_primaire

champ1

champN

Cle_etranger#

type

type

type

type

Prof. Asmaa El Hannani

2ITE-S1

322

Passage au modèle physique (exemple1) Prof. Asmaa El Hannani 2ITE-S1 323 Passage au modèle physique
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