Compte tenu de la structure suivante:Question de conception/modélisation de base de données - Contraintes ou pas de contraintes?
City
Area
User
Chaque zone a 1 et seulement 1 Ville.
Chaque utilisateur a au moins un, mais peut-être plusieurs zones.
Chaque utilisateur a 1 et seulement 1 ville.
Quelle est la manière la plus élégante de modéliser cela?
Actuellement, j'ai:
User,
UserArea,
Area,
City
Où est UserArea 1: relation M w/utilisateur, et la région est de 1: 1 avec la ville.
Le problème est le suivant:
Un utilisateur peut avoir 3 ou 4 zones sous le modèle actuel, mais deux des zones pourraient être dans la ville de « 1 » et les 2 autres zones pourraient être dans la ville « 2 » . Ceci est une violation des règles commerciales. Dois-je simplement mettre une contrainte pour empêcher ce genre de chose, ou est-ce une meilleure approche pour normaliser davantage ce type de paradoxe? Si oui, comment modélise-t-on ce système de telle sorte que:
1 Utilisateur = 1 Ville;
1 Zone = 1 Ville;
1 Utilisateur = M Zones;
Merci pour vos idées.
un utilisateur peut avoir une ville, mais pas de zones? –