© Éditions Eyrolles
143
chapitre n° 2
Le niveau logique : du relationnel à l’objet
Transformation des contraintes
Les éventuelles contraintes des associations d’héritage n’ont pas d’influence sur la structure
des classes obtenues, mais devront être prises en compte au niveau de la programmation
(contraintes SQL CHECK, déclencheurs ou méthodes).
Supposons qu’on désire programmer la contrainte de partition sur l’héritage précédent. Il
faudra s’assurer, par la méthode de création d’un objet PNT, qu’il n’existe pas déjà un objet
PNC ayant le même numéro (numPers), et réciproquement en ce qui concerne la méthode de
création d’un objet PNC.
Associations d’agrégation
Ce n’est pas l’agrégation UML (qui a été étudiée figure 2-36) que nous détaillons ici, il s’agit
d’exposer les règles de traduction des associations d’agrégation du modèle entité-association
et des classes-associations UML.
Modèle entité-association
Les notations que nous employons sont les suivantes :
●
l’association d’agrégation (ici A2) relie une entité (ici E3) à une liaison appelée « agrégat »
(ici A1). Les identifiants des entités sont soulignés (ex : a1,b1...) ;
●
les entités peuvent inclure des attributs supplémentaires (ex : a2,...,b2...) ;
●
les cardinalités minimales des associations (x, y, z, v) peuvent prendre les valeurs 0 ou 1 ;
●
les cardinalités maximales des liaisons entre l’association d’agrégation et l’agrégat (Z, V)
peuvent prendre les valeurs 1 ou N ;
●
les associations peuvent inclure des attributs (ex : d1,..., p1...).
Figure 2-48 Traduction d’une association d’héritage
Personnel
numPers
nomPers
PNT
brevet
validiteLicence
PNT[brevet, validiteLicence]
PNC
indice
prime
PNC[indice, prime]
Personnel[numPers, nomPers]
hérite de
hérite de
143
chapitre n° 2
Le niveau logique : du relationnel à l’objet
Transformation des contraintes
Les éventuelles contraintes des associations d’héritage n’ont pas d’influence sur la structure
des classes obtenues, mais devront être prises en compte au niveau de la programmation
(contraintes SQL CHECK, déclencheurs ou méthodes).
Supposons qu’on désire programmer la contrainte de partition sur l’héritage précédent. Il
faudra s’assurer, par la méthode de création d’un objet PNT, qu’il n’existe pas déjà un objet
PNC ayant le même numéro (numPers), et réciproquement en ce qui concerne la méthode de
création d’un objet PNC.
Associations d’agrégation
Ce n’est pas l’agrégation UML (qui a été étudiée figure 2-36) que nous détaillons ici, il s’agit
d’exposer les règles de traduction des associations d’agrégation du modèle entité-association
et des classes-associations UML.
Modèle entité-association
Les notations que nous employons sont les suivantes :
●
l’association d’agrégation (ici A2) relie une entité (ici E3) à une liaison appelée « agrégat »
(ici A1). Les identifiants des entités sont soulignés (ex : a1,b1...) ;
●
les entités peuvent inclure des attributs supplémentaires (ex : a2,...,b2...) ;
●
les cardinalités minimales des associations (x, y, z, v) peuvent prendre les valeurs 0 ou 1 ;
●
les cardinalités maximales des liaisons entre l’association d’agrégation et l’agrégat (Z, V)
peuvent prendre les valeurs 1 ou N ;
●
les associations peuvent inclure des attributs (ex : d1,..., p1...).
Figure 2-48 Traduction d’une association d’héritage
Personnel
numPers
nomPers
PNT
brevet
validiteLicence
PNT[brevet, validiteLicence]
PNC
indice
prime
PNC[indice, prime]
Personnel[numPers, nomPers]
hérite de
hérite de
