Lut,
dans ma boite on a 2 stagiares en 1ère année de BTS qui n’ont pas encore été très loin dans l’apprentissage de l’analyse. Résultat => bloqués sur une anamyse à faire.
Pourriez-vous svp donner une petit coup de main pour modéliser en base de données cela (j’ai changé le nom des éléments pour faire + générique) :
Comment modéliser cela :
on a une course à pied, qui débute d’une ville et qui finit dans une autre ville, on veut la distance de cette course
Les stagiaires font un modèle de données avec 2 tables villes, or qui dit 2 tables dit 2 mises à jours à faire en parallèle.
Est-il possible de faire cette relation avec d’un côté une seule table Ville et de l’autre une seule table course.
Merci (je n’avais pas abordé de merise depuis 6 ans ^^)
Bonjour,
oui, il ne faut qu’une table ville (ils peuvent même importer un fichier des villes avec code INSEE pour avoir les 40000 communes de France)
Et tu peux très bien avoir 2 clefs etrangere (ou clef externe) dans la table course, pour faire les jointure, tu peux aussi très bien faire 2 fois référence à la même table.
Et pour faire une base de données dans les règles de l’art, il faut factoriser toutes les données, pas de redondance, donc jamais de mise à jour simultanée de la même données sur 2 tables. ça c’est pour le modèle logique, après on peut revenir en arrière sur ces restrictions en cas de problèmes de perf, mais là, ce n’est typiquement pas le cas.
en Merise, si je me rappelle bien, c’est:
MCD … MOT
MLD … MLT?
MPD … MPT
Donc c’est dès le MCD que tu va définir une association 2…n entre les villes et les courses.
Bien entendu c’est même beaucoup plus judicieux (une course qui part et qui arrive au même endroit :))
table course:
{n°,nom,heure,km,ville_depart,ville_arrivee}
table ville:
{n°,nom,taille}
ici la ville_depart et la ville_arrivée pointent tous les deux vers la table ville.
Merci les gars, j’avais une tite intuition sur la double clé, mais comme ça faisait longtemps que je n’avais pas faire d’analyse…
Je vais donc leur filer votre mail pour qu’ils puissent avancer sur leur conception de base de données.
:jap: