Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1349 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  ALTER TABLE ...

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

ALTER TABLE ...

n°993813
Max Evans
Posté le 25-02-2005 à 19:32:38  profilanswer
 

Bonsoir à tous,
 
J'ai réorganisé ma BDD MySQL en faisant un : ALTER TABLE ma_table ORDER BY champ DESC.
 
Le champ "champ" est de type mediumint(7). Du coup, les plus "gros" nombre se situe au début de ma table, jusque là, tout est normal :)
 
Néanmoins, lorsque j'insère un nouvel enregistrement, quelque soit la valeur de son champ "champ", il se positionne en dernier dans la table (En dur aussi, tout à la fin du fichier BDD).
 
Je me demandais donc comment faire pour que, lors de chaque enregistrements, les valeurs de "champ" soit directement bien positionné ; et ce, sans passer par un autre ALTER TABLE qui reste une opération assez lourde sur une grosse BDD ;)
 
 
Merci à tous ;) :jap:


---------------
Envie d'un bol d'air ? Traxxas Revo 3.3
mood
Publicité
Posté le 25-02-2005 à 19:32:38  profilanswer
 

n°993828
Beegee
Posté le 25-02-2005 à 19:57:22  profilanswer
 

et pourquoi tu ne fais pas le tri dans la requête ?
Pour des raisons de performances ?

n°993831
Max Evans
Posté le 25-02-2005 à 20:03:33  profilanswer
 

Exactement ;)
La table contient 500 000 enregistrements ... Mon tri s'effectuerait sur des enregistrements disséminés un peu partout, donc une grosse perte de perfs :( (Même en utilisant des index bien placés)


---------------
Envie d'un bol d'air ? Traxxas Revo 3.3
n°993840
moi23372
Posté le 25-02-2005 à 20:16:26  profilanswer
 

c'est chose tout à fait normal...
le language SQL à été conçu dans ce but... c'est lui qui gere les perfs... donc je ne pense pas que tu as a te soucié de cela... malheureusement, il tu n'as vraiment d'autre possibilités.

n°993862
Beegee
Posté le 25-02-2005 à 20:34:07  profilanswer
 

Si tu dois souvent accéder aux enregistrements ayant les plus gros nombres, faudrait plutôt avoir une table contenant les références vers ces enregistrements, par exemple ... mais ça implique un mécanisme de maintenance de cette table.
 
En gros, on prépare les données (ce qui prend un petit peu de temps supplémentaire quand on insère dans la table), mais ensuite à l'exécution, c'est plus rapide.


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  ALTER TABLE ...

 

Sujets relatifs
Impossible d'alimenter ma table sql :( syntaxe ?Erreur MySql : Table 'xxx' is read only
Table temporaire avec nom de champs différentAlter table
enregistrer automatiquement dans ma table mysql ?problème filtrage données table
Comment détruire une table access depuis VB6 avec un adodb?SQL : Initialisation des champs ajoutés par un ALTER TABLE
MySql : Alter Table ....ADD[mySQL] ALTER TABLE mal foutu ou c moi ?...
Plus de sujets relatifs à : ALTER TABLE ...


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR