Bonjour;
Je suis en train de réaliser un mcd pour une base de données, les concepts ne sont pas faciles à apprehender et les relations entre les données sont aussi un peu compliqués donc je vais juste poser sur le forum l'extrait bien ciblé de ce qui me pose problème.
Textuellement :
A chaque version de la norme GERAN correspondent des tests cases. Chaque version de la norme GERAN est susceptible d’ajouter des nouveaux tests cases et d’en supprimer par rapport à la précédente. Un test case peut donc appartenir à plusieurs versions GERAN.
Un test case est identifié par un numéro (exemple : 12.1.1) et caractérisés par une description textuelle.
Ces tests cases sont classés par des organismes tel GCF et PTCRB. Chaque organisme délivre régulièrement des nouvelles versions de leurs tables de validation par rapport aux différentes versions GERAN. Chaque table rassemble une liste non exhaustive des tests de certifications pour chaque version GERAN. Comme un test peut appartenir à plusieurs versions GERAN, il appartient également à plusieurs versions de tables de chaque organisme.
Une table est définie par un numéro de version.
L’organisme donc va valider chaque test case dans une catégorie donnée pour une ou plusieurs bandes de fréquences et plateformes de test.
Une catégorie est définie par un code (A, B, N, P) et une description.
Une bande de fréquence est définie par sa valeur (850, 900,1900).
Une plateforme de test est caractérisée par un numéro et un nombre de transiever.
Bon pas trop mal à la tete ??
Le problème ici concerne l'unicité de l'ensemble VersionGSM-TABLEVersion-TC
On peut alors créé une clé composé avec les indentifiant relatifs mais alors ensuite je vais me retrouver avec des associations 0-n qui seront des tables avec une clé primaire de 7 éléments:super lourd à mon gout
Donc ma solution a été de créer un identifiant informatique pour chaque ligne de tables.
En conséquence l'unicité n'est plus garantie et pour résoudre ce problème je pense créer un trigger sur cette table qui se chargera de la vérifier.
Mais est ce une bonne solution ??? Est ce une grosse bidouille infame ? Mon modèle est-il bien pensée pour etre obliger de faire ce truc ?
Partager