11.4 Représentation des types d’associations
271
© Dunod – La photocopie non autorisée est un délit.
Considérons par exemple, le type d’associations occupe entre DEPARTEMENT et
EMPLOYE (figure 11.2). Ces deux types d’entités sont représentés par les tables
DEPARTEMENT et EMPLOYE. Sachant que DEPARTEMENT est identifié par
NomDépart, on représente occupe par une nouvelle colonne NOMDEPART dans la
table EMPLOYE de telle sorte que la valeur de NOMDEPART identifie le DEPARTEMENT dans lequel l’EMPLOYE est occupé. NOMDEPART est donc une clé étrangère
d’EMPLOYE qui référence la table DEPARTEMENT. On rappelle que, dans un
schéma de base de données, l’arc indique la présence d’une contrainte référentielle
à laquelle est soumise la clé étrangère NOMDEPART.
Figure 11.2 - Représentation d’un type d’associations un-à-plusieurs par une clé
étrangère
Montrons que cette traduction respecte bien le schéma source.
Le type d’associations occupe nous donne deux informations, pas plus, pas
moins : (1) à chaque entité EMPLOYE, il associe une et une seule [1-1] entité
DEPARTEMENT et (2) à chaque entité DEPARTEMENT il associe un nombre quelconque [0-N] d’entités EMPLOYE.
Que décrit le schéma de droite ? D’une part, il nous dit que chaque ligne
EMPLOYE possède une et une seule [1-1] valeur de NOMDEPART (colonne obligatoire) qui elle même désigne une ligne de DEPARTEMENT (clé étrangère). En outre,
à chaque ligne de DEPARTEMENT correspond une valeur de NOMDEPART, qu’on
va retrouver dans un nombre quelconque [0-N] de lignes EMPLOYE, puisque cette
colonne ne constitue pas un identifiant. Les relations entre les lignes DEPARTEMENT et EMPLOYE sont donc l’image exacte des relations entre les entités
DEPARTEMENT et EMPLOYE.
Les clés étrangères multi-composants
Lorsque l’identifiant de A est constitué de plusieurs attributs IA1, IA2, ..., on définit
autant de nouvelles colonnes RA1, RA2, ... dans la table de B, qui forment ensemble
la clé étrangère. Si R est facultatif pour B, alors les colonnes RA1, RA2, ... sont
⇒
1-1
0-N
occupe
EMPLOYE
Matricule
Nom
Fonction
id: Matricule
DEPARTEMENT
NomDépart
Localisation
id: NomDépart
EMPLOYE
MATRICULE
NOM
FONCTION
NOMDEPART
id: MATRICULE
ref: NOMDEPART
DEPARTEMENT
NOMDEPART
LOCALISATION
id: NOMDEPART
271
© Dunod – La photocopie non autorisée est un délit.
Considérons par exemple, le type d’associations occupe entre DEPARTEMENT et
EMPLOYE (figure 11.2). Ces deux types d’entités sont représentés par les tables
DEPARTEMENT et EMPLOYE. Sachant que DEPARTEMENT est identifié par
NomDépart, on représente occupe par une nouvelle colonne NOMDEPART dans la
table EMPLOYE de telle sorte que la valeur de NOMDEPART identifie le DEPARTEMENT dans lequel l’EMPLOYE est occupé. NOMDEPART est donc une clé étrangère
d’EMPLOYE qui référence la table DEPARTEMENT. On rappelle que, dans un
schéma de base de données, l’arc indique la présence d’une contrainte référentielle
à laquelle est soumise la clé étrangère NOMDEPART.
Figure 11.2 - Représentation d’un type d’associations un-à-plusieurs par une clé
étrangère
Montrons que cette traduction respecte bien le schéma source.
Le type d’associations occupe nous donne deux informations, pas plus, pas
moins : (1) à chaque entité EMPLOYE, il associe une et une seule [1-1] entité
DEPARTEMENT et (2) à chaque entité DEPARTEMENT il associe un nombre quelconque [0-N] d’entités EMPLOYE.
Que décrit le schéma de droite ? D’une part, il nous dit que chaque ligne
EMPLOYE possède une et une seule [1-1] valeur de NOMDEPART (colonne obligatoire) qui elle même désigne une ligne de DEPARTEMENT (clé étrangère). En outre,
à chaque ligne de DEPARTEMENT correspond une valeur de NOMDEPART, qu’on
va retrouver dans un nombre quelconque [0-N] de lignes EMPLOYE, puisque cette
colonne ne constitue pas un identifiant. Les relations entre les lignes DEPARTEMENT et EMPLOYE sont donc l’image exacte des relations entre les entités
DEPARTEMENT et EMPLOYE.
Les clés étrangères multi-composants
Lorsque l’identifiant de A est constitué de plusieurs attributs IA1, IA2, ..., on définit
autant de nouvelles colonnes RA1, RA2, ... dans la table de B, qui forment ensemble
la clé étrangère. Si R est facultatif pour B, alors les colonnes RA1, RA2, ... sont
⇒
1-1
0-N
occupe
EMPLOYE
Matricule
Nom
Fonction
id: Matricule
DEPARTEMENT
NomDépart
Localisation
id: NomDépart
EMPLOYE
MATRICULE
NOM
FONCTION
NOMDEPART
id: MATRICULE
ref: NOMDEPART
DEPARTEMENT
NOMDEPART
LOCALISATION
id: NOMDEPART
