1 pièce(s) jointe(s)
Problème de modélisation UML en vue de créer une base de donnée.
Pour une base de donnée touristique, les règles sont:
Departement contient des Communes qui contiennent des Lieux
Un Hotel appartient à un lieu et possède un site Web
Un site Web peut être lié à une Commune, ou non !
Ce qui donne ce diagramme:
Pièce jointe 535496
Il n'y a pas un problème avec la boucle Commune Site Web Hotel Lieu ?
Est ce qu'il existe une meilleure solution ?
1 pièce(s) jointe(s)
Problème de modélisation d'une base de donnée.
Merci d'avoir pris le temps de lire le schéma.
J'ai rajouté les id sauf pour la table Commune ou le contexte permet d'utiliser la chaîne Commune comme clé primaire. (une particularité du système considéré)
En fait le problème que je soupçonnais s'est révélé pleinement avec la contribution de "fsmrel" ... et avec un rapide maquettage fait sur Base dans Libre Office.
Le cœur du problème c'est qu'on peut avoir deux lieux identiques (dont le nom est identique) situés dans deux communes différentes.
Exemple fictif dans le Gard: (Nimes, Canet) (Bagnols, Canet)
Pour le problème des lieux dont le nom est identiques, une précédente solution (dans la version ancienne de la base datée de 20 ans :) ) consistait à définir une table séparée:
Relation(idLieu, Commune, Lieu)
Ensuite on définit chaque objet à partir de son idLieu, solution qui marche bien mais oblige à gérer une table supplémentaire et pas mal de jonglage dans les formulaires.
Evidemment l'ancienne base étant dans Access et la nouvelle dans Base, je pourrais faire un transfert et basta. Mais c'est pas possible parce qu'il y avait des erreurs de conception gênantes et que je dois tout réécrire. Et tant qu'à faire si je peux simplifier le système (Commune, Lieu) ...
J'en suis arrivé provisoirement à ce schéma et ca ne va toujours pas !
Pièce jointe 536653
Ce qui m'intéresserait c'est de voir les différentes solutions possibles ...
Problème de modélisation.
A part merci je ne peux rien ajouter d'autre car il va me falloir un petit moment pour assimiler tout ca et faire des tests !
Je dispose de Looping mais j'ignorais qu'il pouvait produire le source SQL. Mes diagrammes viennent de StarUML qui me suffit car je travaille directement en UML.
Pour le problème de la table siteWeb, je reviens dès que j'ai digéré toutes ces infos :)
Cordialement.
Problème de modélisation. [RESOLU]
Voilà la solution retenue.
J'ai ajouté un identifiant à toutes les classes. En UML tout objet a un identifiant et souvent on l'omet en conception, mais c'est plus clair avec.
Pour les lieux j'ai retenu les clés primaires: Département(département) Commune(département, commune) et Lieu(département, commune, lieu)
C'est un peu lourd mais en effet ca marche.
Pour les sites Web le couple (département, commune) pour éviter les doublons.
Et un grand merci aux aidants. Et je suis en train de lire "Modélisation Conceptuelle des Données, une approche pragmatique" pour me perfectionner !
PS. Le système complet fait 19 tables et produit des fiches touristiques ou des cartes (genre carteslozere.free.fr). De quoi bien occuper ma retraite :)