Trop de relations entre les tables :/

Trop de relations entre les tables :/ - SQL/NoSQL - Programmation

Marsh Posté le 22-04-2008 à 11:45:14    

Bonjour,
je suis actuellement en dev sur une appli PHP et j'ai 2-3 questions sur l'MCD...
 
Je gére d'un coté des clients et de l'autre des services.
Un service est composé d'étape (ex: envoie du papier 1, envoie du papier 2 - etc etc).
 
Un client peut s'inscrire à un service. Une table d'association fait le lien avec en plus l'attribut status afin de savoir où en est ce service (en cours, terminé, refusé, etc etc).
Pour chaque étape du service, on doit savoir où en est tel ou tel client (avec encore une fois un attribut statut.
 
Ca me donne ça quand je le modélise : voyez vous un moyen de l'optimiser ?
 
http://pix.nofrag.com/f/5/e/8eb730654110564feb202a90fbb57.png


---------------
Aloha
Reply

Marsh Posté le 22-04-2008 à 11:45:14   

Reply

Marsh Posté le 22-04-2008 à 13:30:12    

Il manque des infos à mon avis pour bien comprendre le modèle, à priori j'y vois une erreur mais je voudrais être sûr...
 

  • un client peut s'abonner à combien de services différents ?
  • un service est-il unique ou peut il y avoir plusieurs occurrences du même service (pour des clients différents par exemple)
  • une étape est-elle unique, ou bien est-elle générique et peut appartenir à plusieurs services différents ? (on peut avoir envoi du papier 1 dans service 1 et dans service 3 par exemple)


Pour moi la relation 14 n'est pas bonne, il n'y a pas besoin de faire de liaison étape -> client puisqu'on doit pouvoir la retrouver via étape -> service -> client, je pense que la relation 14 devrait pointer vers tbl_service_client, mais ça dépend un peu des réponses aux questions précédentes.


Message édité par uncle buzz le 22-04-2008 à 13:41:18
Reply

Marsh Posté le 23-04-2008 à 09:52:14    

Un client peut s'abonner à plusieurs services.
Il y'a une occurence d'un service par client (on fait le lien donc dans la table tbl_service_client).
Une étape est unique. Il y'a plusieurs étapes par service mais une étape est lié à un service.
 
Je me suis posé exactement la même question pour la relation 14 :d
Je me suis juste dit que ce serait plus facile d'accéder aux étapes du client par ce biais qu'en faisant pointer la table vers tbl_service_client.
 
:jap:


---------------
Aloha
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed