0
votes

Meilleure approche Conception de la base de données si des tables ont les mêmes colonnes?

Ma question est simplement simple. Je peux expliquer avec l'image. Je créerai une base de données et cette toutes les tables de la base de données de même colonnes (ISdeletted, Isactive, créatedDate, mis à jour, etc.) Quelle est la meilleure approche desservant cette base de données? Devrais-je découvrir une première table que toutes les tables ont les mêmes colonnes ou comme une seconde desservant que toutes les tables relation à une table de base?

juste un échantillon Entrez la description de l'image ici


0 commentaires

3 Réponses :


0
votes

La première approche est plus appropriée dans votre cas.


1 commentaires

Vous devez garder tous les champs appartenant à l'utilisateur dans la table d'utilisateurs.



0
votes

Vous ne pouvez pas voir une raison pour laquelle vous alliez avec la deuxième conception, à moins que votre sélection et votre écho n'incluent pas l'ID utilisateur et le nom.


0 commentaires

0
votes

En général, vous devez conserver tous les champs appartenant à utilisateur dans la table , à quelques exceptions près:

  • option; S'il existe un ensemble de champs qui s'appliquent uniquement à un sous-ensemble d'utilisateurs, vous pouvez avoir une table individuelle qui est séparée de l'utilisateur, car elle ne serait pas utile pour la plupart des utilisateurs. Par exemple, si vous aviez une table qui comprenait des détails uniquement applicables aux gestionnaires, vous pouvez diviser une table avec uniquement les informations spécifiques au gestionnaire.

  • lisibilité d'avoir de très nombreux champs qui sont un-à-un avec utilisateur : S'il s'agit d'une préoccupation, vous pouvez diviser utilisateur en plusieurs tables qui Chaque offre avec un sujet sur l'utilisateur, par exemple, les informations de contact de l'utilisateur, les informations de facturation de l'utilisateur, etc.

  • performance, par exemple Votre performance a ralenti car vous devez constamment exécuter une certaine mise à jour qui verrouille l'ensemble de la table utilisateur pour accéder à une ou deux valeurs dans ce tableau. Dans ce cas, vous pourriez diviser utilisateur en plusieurs tables de sorte que tout ce qui soit enfermé à chaque fois qui fonctionne.


0 commentaires