09. januar 2006 - 11:29Der er
14 kommentarer og 2 løsninger
forspørgelse kørerer for langtsom.
Jeg har en forspørgelse i noget VBA kode.
dim Db as database dim rec as recordset dim qry as querydef dim sql as string
set db= currentdb
Sql = " SELECT * TABEL"
Set qry = dbs.CreateQueryDef("", SQL) Set rec = qry.OpenRecordset()
osv....
længere nede kørere jeg meget rundt med rec.movenext, rec.moveprevieus, rec.movefirst osv.
dvs. jeg skal ind i tabellen og der inde kørere jeg meget frem og tilbage og der er 1300 poster * 9 jeg i løkke kørere på denne måde. det tager 3 minnutter og det syndes jeg er altfor langsom.
Har access ikke flere måde man maniplurere og skriver og læser fra tabellen ?
og på den som jeg har skrevet tingene går koden ind i recordsetet for hvergang og det tager på den måde ?
kan man ikke bare smide alt i hukkommelsen og bearbejde sin data på den måde og senere plotte dem i tabellen ?
håber der er nogen der kan hjælpe :(
min problem er at jeg skal have fundet en måde, så jeg hurtigt kan navigere i recordsetet og redigere ?
er der andre end den jeg brugere som er hurtigere ?
It is very likely your code which is the bottle neck not the SQL statemnets.
Try opening the queries directly and see how long they take. Then if you can see that they are slow you can try optimising them first. Then when these are OK you can look at your code.
In Access there is a query designer. Copy the contents of your SQL into the query designer and run it there.
In your code you have something like this Sql = " SELECT * from TABEL......"
If you place a breakpoint just after this line, then you can see the contents of the SQL in the debug window (CTRL+G) Then copy it from there into the query builder.
Set qry = dbs.CreateQueryDef("", strSQL) Set rec = qry.OpenRecordset()
jeg skal bruge alt fra Tabellen, men hvis jeg laver en Accessquery som henvisser til tabellen ville det kører hurtigere, jeg sortere nemlige ikke noget, jeg tager og skal bruge alt fra tabellen ?
takes 3 minutes then it sint your code which is slow, but the actual SQL. There isnt anything wrong with the actual statement, so i suspect that you have LOTS of data, or maybe a slow network?
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.