Problème de conception MCD et cardinalités

Fermé
Laure94 Messages postés 21 Date d'inscription mercredi 9 janvier 2008 Statut Membre Dernière intervention 27 octobre 2011 - Modifié par Laure94 le 27/10/2011 à 14:07
 benevole - 27 oct. 2011 à 16:48
Bonjour,


je bloque sur mes cardinalités et la conception de mon MCD :(
je vous explique :

On a des salariés, des formateurs spécialisés dans plusieurs domaines.
Les salariés participent à des formations.
Un formateur dirige une formation à la fois.
Un salarié peut participer à une formation à la fois.
Une formation peut accueillir 10 salariés au maximum.
Un formation dure un jour.

alors pour moi ça donne ça :

FORMATEUR -----(1,n)-----SPÉCIALISER-----(1,n)-----DOMAINE
du coup SPÉCIALISER devient une table.
ensuite vient mon problème avec les formations.

SALARIE--(1,1)---(1,10)--FORMATION--(1,1)---(1,n)--FORMATEUR
|(1,1)
|(1,n)
DATE_FORMATION

En fait je ne sais pas comment gérer le fait qu'il faille entre 1 et 10 salariés pour une formation à une date donnée et qu'en même temps il y a un formateur pour cette formation à la date donnée.


Merci pour vos réponses !

A voir également:

4 réponses

Je dirai rapidement :

[SALARIE]-(0,1)-[PARTICIPE, date_formation]-(0,10)-[FORMATION]

[FORMATION]-(0,n)-[DIRIGE,date_formation]-(0,1)-[FORMATEUR]

[FORMATEUR]-(1,n)-[SPECIALISE]-(0,n)-[DOMAINE]

Donc il a une date de formation pour le salarié et une date de formation pour le formateur (et peut être une relation entre formation et domaine)
0
Laure94 Messages postés 21 Date d'inscription mercredi 9 janvier 2008 Statut Membre Dernière intervention 27 octobre 2011 1
27 oct. 2011 à 16:02
Merci pour votre réponse !

je vais analyser ça de plus prêt ^^
0
Laure94 Messages postés 21 Date d'inscription mercredi 9 janvier 2008 Statut Membre Dernière intervention 27 octobre 2011 1
Modifié par Laure94 le 27/10/2011 à 16:17
Si on met la date de formation dans l'association, on peut avoir des données du type :

membre_1 stage_1 10/11/2011
membre_1 stage_2 10/11/2011
or le salarié ne peut pas faire deux formation le même jour.

Je voudrai savoir ce que j'ai dans mon association sous forme de table en fait ^^.

sinon est ce qu'avec du PL SQL on peut vérifier si un salarié s'inscrit bien à une seule formation par jour ?
0
En fin de compte dans la base on aura une table PARTICIPE avec 2 champs 'date_formation' et 'salarie_id' (clé de la table salarie) et il est facile en SQL de voir si un salarié est déjà inscrit pour le jour dit à une formation

Exemple : SELECT date_formation from participe where salarie_id = ...

si la requête renvoie 0 -> c'est bon le salarié peut s'inscrire...
0