Autor | Zpráva | ||
---|---|---|---|
Bronzi Profil |
#1 · Zasláno: 22. 9. 2009, 20:18:00
Zdravím, mám dotaz.
Nevíte kdy se skutečně provede dotaz v cursoru? Jestli to je už při jeho deklaraci a při otevření se jen načte od začátku nebo se dotaz provádí pokaždé při otevření? Případně jestli existuje nějaká možnost na vyresetování cursoru na začátek? Díky moc |
||
Kajman_ Profil * |
#2 · Zasláno: 22. 9. 2009, 23:25:28
Nešlo by to odhadnout z chování při užití uživatelské proměnné v cursoru?
|
||
Bronzi Profil |
#3 · Zasláno: 23. 9. 2009, 06:31:19
To mě včera nenapadlo.
Tak zjevně se dotaz provede při otevření. Určitě to je nějak optimalizované aby to bylo rychlejší ale ještě by to chtělo možnost jak vrátit cursor na začátek bez provedení dotazu. Protože potřebuju znova stejné data. Možná že si to MySQL nějak ohlídá že když se nezmění proměnná v dotazu ovlivňující výsledek tak jej uloží a pak jen načítá znovu. Ale byl bych rád kdyby mi to někdo potvrdil nebo vyvrátil. Díky |
||
Kajman_ Profil * |
#4 · Zasláno: 23. 9. 2009, 10:07:38
Ano, v některých případech na to může použít query cache a druhý dotaz bude rychlejší.
|
||
Časová prodleva: 15 let
|
0