Bonjour tout le monde,
Comme le titre l'indique clairement, je demande est ce qu'il est possible de mettre un lien d'association entre une entité et une association dans un MCD ?
Merci d'avance pour votre aide
Bonjour tout le monde,
Comme le titre l'indique clairement, je demande est ce qu'il est possible de mettre un lien d'association entre une entité et une association dans un MCD ?
Merci d'avance pour votre aide
Bonsoir Dahim,
Malheureusement, en Merise, on n’associe pas une association à une association. C’es ballot, mais c’est ainsi, alors on se débrouille, on déguise, comme ici...
Bonsoir et merci pour votre réponse,
il parait bien que ça se fait pas et même PowerAMC ne l'autorise pas.
pour vous traduire mon besoin: il s'agit d'une entité qui doit passer sa clé primaire à une association en tant que clé étrangère mais sans qu'elle participe à la clé primaire de cette association.
voilà un schéma représentatif mais qui va générer en fin d compte une table "Mesurer" avec comme clé primaire la combinaison des clés primaires des 3 entités... Ce qui ne va pas avec mes règles de gestion
merci encore une fois
Bonsoir fsmrel !
désolé de ne pas avoir été assez clair, la règle dit: à une période donnée et pour une station donnée on ne trouve qu'un seul opérateur... autrement dit: sachant la station et la période on peut déduire la hauteur, le débit ainsi que l'opérateur.
Merci
Bonsoir Dahim,
D’accord. D’un point de vue purement MCD et en suivant Merise, cela entraîne la mise en œuvre d’une CIF (contrainte d’intégrité fonctionnelle). Graphiquement parlant on peut noter la chose par exemple ainsi :
Ou dans le style WinDesign (voyez la FAQ Merise) :
Ou encore avec DB-MAIN (gratuit, contrairement aux précédents), où l’on réduit l’« identifiant » de MESURER à la paire {STATION, PERIODE} :
Avec WinDesign et DB-MAIN, le MLD produit est bien celui qui est attendu, la clé primaire de la table MESURER est la paire {IdStation, IdPeriode} :
Mais avec PowerAMC, mauvaise pioche, car il ne sait pas ce qu’est une CIF, donc OperateurId fera à tort partie de la clé primaire de la table MESURER :
En conséquence il faudra ôter manuellement l’attribut OperateurId de la clé primaire.
Avec PowerAMC, pour obtenir directement le même résultat qu’avec WinDesign et DB-MAIN, vous pouvez déguiser MESURER en entité-type et utiliser l’identification relative (cardinalités 1,1 mises entre parenthèses) :
A noter que si vous ne souhaitez pas générer de table PERIODE parce que celle-ci n’apporterait rien d’intéressant et serait par la suite plus un boulet qu’autre chose, avec PowerAMC vous pouvez décocher l’option « Générer » pour l’entité-type PERIODE dans le MCD (ou vous supprimez manuellement la table après génération) :
Vous pouvez aussi faire l’économie du MCD (niveau conceptuel) et utiliser directement un diagramme MySQL Workbench (l’outil est gratuit). La table MESURE a là aussi pour clé primaire {StationId, PeriodeId} :
Que dire d'autre ?
Bonjour fsmrel,
Vraiment rien à dire je vous remercie pour votre magnifique travail et pour le temps que vous avez pris pour m'expliquer avec des exemples que vous avez conçu.
j'ai bien compris maintenant, en plus j'ai appris de nouveaux outils de conception Merci beaucoup chef
Salutations...
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager