Relation réflexive (n:n)

Fermé
Kone_540 Messages postés 4 Date d'inscription vendredi 22 février 2019 Statut Membre Dernière intervention 25 février 2019 - 22 févr. 2019 à 14:16
Kone_540 Messages postés 4 Date d'inscription vendredi 22 février 2019 Statut Membre Dernière intervention 25 février 2019 - 25 févr. 2019 à 14:45
Bonjour à tous, je conçois actuellement une application web avec le Framework Laravel. Pour cette application j'ai mis en place une base de données qui va contenir mes différentes tables, mais j'ai incertitude concernant une table. En fait, c'est la table "villes" qui a une relation réflexive n:n. C'est à dire qu'une ville peut constituer une ligne avec plusieurs villes et vis-versa. Voici la schématisation :


Alors voila je propose comme MLD de cette relation.
villes(id, id_villeDepart, id_VilleArrive, distance).

Mes questions sont les suivantes :
1- Ai-je fais une bonne transformation du MCD en MLD ?
2- Dois-je ajouter quelques éléments encore pour parfaire le MLD ?
J'attends vos critiques les critiques les amis. N'hésitez pas à me poser des questions si vous avez des incompréhensions le sujet.

2 réponses

diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024 1 854
22 févr. 2019 à 14:22
Bonjour,

L'idée semble bonne, mais pour moi le calcul de distance ne se fait pas avec une table... ( je dis pour moi ). il me semble plus cohérent de rajouter La latitude et la longitude des villes et de faire un calcul dans l'applicatif ( ou le site Web)

Car la... clairement... la bdd semblerait infini
0
Kone_540 Messages postés 4 Date d'inscription vendredi 22 février 2019 Statut Membre Dernière intervention 25 février 2019
22 févr. 2019 à 14:34
Merci pour ta réponse, mais la propriété "distance" représente en fait le nombre de kilomètres qui sépare la ville de départ et la ville d'arrivé puisque le nombre de kilomètres est connu d'avance. Evidemment que ce n'est toute la base de données. Comme c'est avec la table "villes" j'avais un souci, je l'ai donc postée seul.
0
diablo13800 Messages postés 2890 Date d'inscription jeudi 2 juillet 2015 Statut Membre Dernière intervention 16 février 2024 1 854
22 févr. 2019 à 14:57
Bien sur je comprend très bien ce que doit être la table distance, mais vous imaginer le nombre de ligne? Raison pour laquelle je passerais pas par une bdd mais pas des calculs en applicatif/ web .

Sinon pour vous répondre il vous faut une table intermédiaire.. nommé "distance" par exemple, qui prend Id départ, id arrive, et distance. ( pas besoin d'id car le couple depart et arrivé est unique.)
0
Kone_540 Messages postés 4 Date d'inscription vendredi 22 février 2019 Statut Membre Dernière intervention 25 février 2019
Modifié le 25 févr. 2019 à 14:45
"distance" n'est pas une table mais plutôt une propriété
0
yg_be Messages postés 23346 Date d'inscription lundi 9 juin 2008 Statut Contributeur Dernière intervention 24 novembre 2024 Ambassadeur 1 552
22 févr. 2019 à 20:58
bonjour, 2 éléments m'étonnent quand je lis
villes(id, id_villeDepart, id_VilleArrive, distance)
:
1) pourquoi écris-tu villes?
2) à quoi y sert id?
0
Kone_540 Messages postés 4 Date d'inscription vendredi 22 février 2019 Statut Membre Dernière intervention 25 février 2019
25 févr. 2019 à 14:36
1)Désolé j'ai fait une erreur c'est plutôt lignes(id, id_villeDepart, id_VilleArrive, distance).
2)id est l'identifiant généré automatiquement dans la table, je compte l'effacer après.
0