Bonjour,
Je travaille sur la réalisation d'une application de gestion pour un club de tennis. J'en suis à la conception, et mon MCD me pose problème sur un point précis : celui des réservations de courts.
En résumé : pour une réservation, j'ai une date, un court, et un créneau horaire. Evidemment, je ne peux pas avoir 2 réservations qui auraient la même date, le même court et le même créneau, au moins l'un des 3 doit différer. Il s'agit donc visiblement d'une association ternaire. Mais mon problème est lié aux réservataires. Sur la première image, on peut voir qu'il y a une table adhérent que je devrais relier à cette association ternaire pour montrer que c'est un adhérent qui l'effectue. Seulement il n'y a pas que la table adhérent qui peut faire des réservations, il y en a aussi 3 autres (elles ne figurent pas sur le schéma). Je ne pense pas que ces tables doivent toutes être reliées à l'association centrale, car celle-ci deviendrait une association à 7 pattes.
J'ai alors pensé à "éclater" mon association ternaire comme on peut le voir sur le second schéma, j'obtiens donc une table "réservation". Je pense que je tiens ma solution, mais je ne trouve aucun moyen de formaliser la contrainte : on ne peut jamais avoir 2 réservations qui auraient exactement la même date, le même créneau horaire et le même court. Est-ce une CIF ? Je ne vois pas comment, autre chose ?
En vous remerciant d'avance, toute suggestion est la bienvenue !!
Partager