UML 2 pour les bases de données
158
© Éditions Eyrolles
La dernière solution est basée sur l’utilisation d’une troisième classe. Cette classe porte le nom
de l’association et contient deux références.
Cette solution présente un avantage : elle est valable pour tous les types d’associations (on la
dit ainsi universelle). La structure de la base n’a pas à être modifiée si les cardinalités sont
modifiées (activation ou désactivation de contraintes SQL UNIQUE au niveau des références).
Associations un-à-plusieurs
On recense quatre possibilités de transformation d’une association un-à-plusieurs du modèle
conceptuel dans le modèle objet.
Figure 2-66 Référence et référence inverse
Figure 2-67 Solution universelle
Figure 2-68 Associations un-à-plusieurs
C1 [a, …, @refC2 ]
C2 [b, …, @refC1 ]
C1 [a, …]
A[@refC1 , @refC2 ]
C2[ b, …]
E1
a
E2
C1
a
C2
b
b
A
A
0,1
ou
1,1
*
ou
1..*
0,N
ou
1,N
0..1
ou
1
158
© Éditions Eyrolles
La dernière solution est basée sur l’utilisation d’une troisième classe. Cette classe porte le nom
de l’association et contient deux références.
Cette solution présente un avantage : elle est valable pour tous les types d’associations (on la
dit ainsi universelle). La structure de la base n’a pas à être modifiée si les cardinalités sont
modifiées (activation ou désactivation de contraintes SQL UNIQUE au niveau des références).
Associations un-à-plusieurs
On recense quatre possibilités de transformation d’une association un-à-plusieurs du modèle
conceptuel dans le modèle objet.
Figure 2-66 Référence et référence inverse
Figure 2-67 Solution universelle
Figure 2-68 Associations un-à-plusieurs
C1 [a, …, @refC2 ]
C2 [b, …, @refC1 ]
C1 [a, …]
A[@refC1 , @refC2 ]
C2[ b, …]
E1
a
E2
C1
a
C2
b
b
A
A
0,1
ou
1,1
*
ou
1..*
0,N
ou
1,N
0..1
ou
1
