Séparer une table en 2 pour regrouper les informations
MadM@tt
Messages postés2167Date d'inscriptionmardi 11 novembre 2003StatutMembreDernière intervention16 juillet 2009
-
22 nov. 2007 à 19:26
pneau
Messages postés258Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention27 octobre 2010
-
23 nov. 2007 à 11:46
Bonjour à tous,
Je voulais savoir si c'était une bonne idée de séparer une table en 2 : en effet j'ai une table qui contient près de 50 colonnes, c'est pas très lisible, alors est-ce raisonnable de faire par exemple une table entreprise, qui contient les infos principale de l'entreprise, et une table 'permissions' par exemple, qui regroupera les permissions des entreprises. Chaque entreprise aura 1 correspondance en permissions, et inversement.
C'est uniquement pour éviter d'avoir trop de colonnes.
Voilà que penser de cette pratique ? Utile ? Est-ce que je pourrai gagner ou perdre en rapidité ? (surtout avec beaucoup d'enregistrements)
pneau
Messages postés258Date d'inscriptionmercredi 21 avril 2004StatutMembreDernière intervention27 octobre 20105 23 nov. 2007 à 11:46
salut
compte tenu de l'équivalence 1 eentreprise = 1 permission, je ne vois pas l'interet d'éclater ta table en 2.
tu perdras obligatoirement en perf si tu es obligé de faire une jointure entre les 2 tables pour récupérer les infos.
pour éviter les pb de perf, positionne des index sur les champs souvent utilisés dans les clauses Where, ne fait pas de select *
si ce n'est pas nécessaire
sinon les moteurs de BDD sont normalement concus pour gérer des gros volumes d'infos.