[SQL sous VBA] dans Access 97

dans Access 97 [SQL sous VBA] - VB/VBA/VBS - Programmation

Marsh Posté le 14-02-2003 à 10:20:59    

Je dépanne et modifie des applis
dans l'une, j'ai cette requête, qui est lente ...  
je ne vois pas quoi changer pourtant ...
 
et vous ?
 
SELECT sel_ToutesLignesAEditer.Libellé1Feuille, sel_ToutesLignesAEditer.Libellé2Feuille, sel_ToutesLignesAEditer.Libellé3Feuille, sel_ToutesLignesAEditer.Libellé4Feuille, sel_ToutesLignesAEditer.Libellé5Feuille, sel_ToutesLignesAEditer.Libellé6Feuille, sel_ToutesLignesAEditer.Libellé7Feuille, sel_ToutesLignesAEditer.Libellé8Feuille, sel_ToutesLignesAEditer.Libellé9Feuille, sel_ToutesLignesAEditer.SousTitre, sel_ToutesLignesAEditer.Cahier, sel_ToutesLignesAEditer.CahierAEditer, sel_ToutesLignesAEditer.OrdreCaBleu, sel_ToutesLignesAEditer.OrdreIdentifiant, sel_ToutesLignesAEditer.Direction, sel_ToutesLignesAEditer.CodGrp, sel_ToutesLignesAEditer.LibGroupe, sel_ToutesLignesAEditer.CodAge, sel_ToutesLignesAEditer.LibAgence, sel_ToutesLignesAEditer.OrdreFeuille, sel_ToutesLignesAEditer.NomFeuille, sel_ToutesLignesAEditer.FormatEntete, sel_ToutesLignesAEditer.NbParPage, sel_ToutesLignesAEditer.Libellé6Feuille, sel_ToutesLignesAEditer.EntêteColonne0, sel_ToutesLignesAEditer.EntêteColonne1, sel_ToutesLignesAEditer.EntêteColonne2, sel_ToutesLignesAEditer.EntêteColonne3, sel_ToutesLignesAEditer.EntêteColonne4, sel_ToutesLignesAEditer.EntêteColonne5, sel_ToutesLignesAEditer.EntêteColonne6, sel_ToutesLignesAEditer.EntêteColonne7, sel_ToutesLignesAEditer.LibelléBasDePage, sel_ToutesLignesAEditer.OrdreRegroup, sel_ToutesLignesAEditer.LibRegroup, sel_ToutesLignesAEditer.Regroup, sel_ToutesLignesAEditer.RegroupAEditer, sel_ToutesLignesAEditer.OrdreMétier, sel_ToutesLignesAEditer.Métier, sel_ToutesLignesAEditer.LibelléMétier, sel_ToutesLignesAEditer.CodGes, sel_ToutesLignesAEditer.Identifiant, sel_ToutesLignesAEditer.LibIdentifiant, sel_ToutesLignesAEditer.OrdreLigne, sel_ToutesLignesAEditer.Ligne,  
IIf([sel_ToutesLignesAEditer]![LibelléLigne]="LibTOT","TOTAL " & [sel_ToutesLignesAEditer]![LibelléMétier] & " " & [sel_ToutesLignesAEditer]![LibIdentifiant],[sel_ToutesLignesAEditer]![LibelléLigne]) AS LibelléLigne,
TRAVAIL.TypeDeFeuille, TRAVAIL.T1_M12AA_1, TRAVAIL.T1_MM_1_AA, TRAVAIL.T1_MMAA, TRAVAIL.T1_MMAA_1, TRAVAIL.T1_Ecart, TRAVAIL.T1_ProgAnnee, TRAVAIL.T1_ProgAANivSup, TRAVAIL.T2_BaseM12AA_1, TRAVAIL.T2_Unité, TRAVAIL.T2_ObjAA, TRAVAIL.T2_RéalMMAA, TRAVAIL.T2_RéalAA, TRAVAIL.T2_PctRéal, TRAVAIL.T2_Trend, sel_ToutesLignesAEditer.FormatColonne1, sel_ToutesLignesAEditer.FormatColonne2, sel_ToutesLignesAEditer.FormatColonne3, sel_ToutesLignesAEditer.FormatColonne4, sel_ToutesLignesAEditer.FormatColonne5, sel_ToutesLignesAEditer.FormatColonne6, sel_ToutesLignesAEditer.FormatColonne7, sel_ToutesLignesAEditer.HauteurLigne, sel_ToutesLignesAEditer.InterLigne, sel_ToutesLignesAEditer.TraitTop, sel_ToutesLignesAEditer.TraitBottom, sel_ToutesLignesAEditer.NomPolice, sel_ToutesLignesAEditer.StylePolice, sel_ToutesLignesAEditer.SizePolice, sel_ToutesLignesAEditer.CouleurFond, sel_ToutesLignesAEditer.StyleTrait, sel_ToutesLignesAEditer.CouleurTrait, sel_ToutesLignesAEditer.EpaisseurTrait
FROM sel_ToutesLignesAEditer INNER JOIN TRAVAIL ON (sel_ToutesLignesAEditer.Ligne = TRAVAIL.Ligne) AND (sel_ToutesLignesAEditer.Identifiant = TRAVAIL.Identifiant)
ORDER BY sel_ToutesLignesAEditer.Cahier, sel_ToutesLignesAEditer.OrdreCaBleu, sel_ToutesLignesAEditer.Direction, sel_ToutesLignesAEditer.CodGrp, sel_ToutesLignesAEditer.CodAge, sel_ToutesLignesAEditer.OrdreFeuille, sel_ToutesLignesAEditer.OrdreRegroup, sel_ToutesLignesAEditer.OrdreMétier, sel_ToutesLignesAEditer.CodGes, sel_ToutesLignesAEditer.OrdreLigne;
 
 
je me dois de préciser que "sel_ToutesLignesAEditer" est  une requête qui elle-même en appelle deux autres, et ainsi de suite, sur 7 niveaux !!!
En fait, il y a des requêtes différentes en fonction de ce qu'il y a à rechercher dans la BDD, au lieu d'insérer des "variables chaîne de caractères" pour reconstruire la requête directement dans le code
Il parait que faire plusieurs requêtes dans Access et choisir celle que l'on veut utiliser est plus rapide en traitement que d'en avoir une seule dont le "contenu" peut changer en fonction de divers paramètres ...
 
qu'en penser ?


Message édité par Hepil le 14-02-2003 à 10:29:59
Reply

Marsh Posté le 14-02-2003 à 10:20:59   

Reply

Marsh Posté le 14-02-2003 à 11:08:17    

Citation :

qu'en penser ?


 
 
 
rien de bon !  
 
troll ? ou alors change d'organisation...


---------------
Music|Market|Feed|Loom|DVD
Reply

Marsh Posté le 14-02-2003 à 11:33:58    

Loom the gloom a écrit :

Citation :

qu'en penser ?


 
 
 
rien de bon !  
 
troll ? ou alors change d'organisation...


 
 :lol:  :lol:  :lol:  :lol:  
 
pourquoi ? qu'est-ce qui ne va pas ?


Message édité par Hepil le 14-02-2003 à 11:34:16
Reply

Marsh Posté le 14-02-2003 à 11:49:27    

ben vu la complexité du truc, c'est normal que ça puisse être lent sur n'importe quelle machine.  Il faudrait ptet repenser cette requête en profondeur...  Enfin a priori hein ;)


---------------
Whichever format the fan may want to listen is fine with us – vinyl, wax cylinders, shellac, 8-track, iPod, cloud storage, cranial implants – just as long as it’s loud and rockin' (Billy Gibbons, ZZ Top)
Reply

Marsh Posté le 14-02-2003 à 11:57:12    

Citation :

Qu'en penser


Que te voilà face à une belle usine à gaz pourri de partout et que tu risque de passer un bon bout de temps avant d'avoir quelque chose de propre !
Sans rire, ça semble vraiement mal conçu tout ça ...
 
Ce que je ferai dans un cas similaire : soit tu as le temps de tout refaire, soit tu laches le truc en disant à ton chef que c'est trop le bordel !  
Bonne chance !  :hello:


---------------
Gérez votre collection de BD en ligne ! ---- Electro-jazzy song ---- Dazie Mae - jazzy/bluesy/cabaret et plus si affinité
Reply

Marsh Posté le 14-02-2003 à 11:57:12    

oui t'as certainement raison
quelle bordel qd on reprend un boulot comme cela ...

Reply

Marsh Posté le 14-02-2003 à 12:10:27    

Hepil a écrit :

oui t'as certainement raison
quelle bordel qd on reprend un boulot comme cela ...


 
ma remarque n'était pas méchante, tu sais
mais quand tu commences à sélectionner des dizaines de trucs, et qu'en plus, tu rajoutes des iif à foison, fo pas s'attendre à des perfs extra
qui plus est en cas de problème dans ta requete, tu auras un mal fou à trouver l'erreur
 
j'avais le même genre de requete lors de mon stage, et on m'a rapidement conseillé de laisser tomber et de revoir mon organisation...  :hello:


---------------
Music|Market|Feed|Loom|DVD
Reply

Marsh Posté le 14-02-2003 à 15:36:42    

oui c'est juste
en plus je ne conniassais pas l'existence de 'iif' dans une requête SQL ...
 
pas le temps de tout refaire
j'ai plus d'une vingtaine de requ^tes comme cela ... :??:  

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed