Newsgroup: it.comp.appl.access
Titolo: [Test] Prestazioni Dcount Vs Recordset

Ho pubblicato il Demo per il test in oggetto, chi volesse provarlo può darne
riscontro in questo 3D.
http://www.alessandrobaraldi.it/DettaglioFaq.asp?IdFAQ=277
Saluti
-- 
@Alex (Alessandro Baraldi)
---------------------------------------------------------------------------
http://www.sitocomune.com/
http://www.alessandrobaraldi.it
---------------------------------------------------------------------------


Puoi anticipare i risultati? Sono confermate le osservazioni di Giorgio?
Ciao, Carlo 

 Ciao, Carlo
Ciao
@Alex


Interessante il comportamento del Qry[DAO]...
Ciao, Carlo

 Ciao, Carlo


 Interessante il comportamento del Qry[DAO]...
Non con una "pesata".
Si sa che la query e' compilata mentre per le chiamate via codice non lo 
e'. E' necessario togliere la "tara" di prima esecuzione. Probabilmente 
la differenza e' ancora piu' evidente con una sola chiamata.
-- 
ac
y-1=x

 ha scritto nel messaggio
news:qPOrh.11150$bH4....@tornado.fastwebnet.it...

Una chiamata
DCOUNT -----> 20,64 ms
Rs[DAO] ----> 11,30 ms
Qry[DAO] ---> 8,25 ms
Rs[ADO] ----> 28,47 ms


 
Prova a sostituire il currentdb con dbengine(0)(0). L'effetto e' 
abbastanza sorprendente.  ;<). Potrai "pavoneggiarti" ancora di piu'
Mi hai rotto talmente gli "zebbedei" che alla fine mi hai covinto a fare 
il test.  ;<))))
-- 
ac
y-1=x

 y-1=x
Ecc..ecc ... zzo... era ora... dopo che hai detto, e sostenuto che non era
possibile...!
Si avevo provato dopo la mail che mi hai mandato con quelle note, ma non è
questo il senso del test..., Alessà Giorgio che ha fatto la prova per
esprimere
il suo Giudizio, ma tu hai fatto solo una "SUPPOSTA" e quelle io le uso in
caso
d'influenza....
;-)


 d'influenza....
Se quelli che hanno scritto la "dcount" sono delle seghe mica e colpa 
mia. Le supposte fanno bene, sempre meglio delle pasticche.
Rispetto a quello che era il test a me interessa solo qualcosa che 
"drasticamente" fa migliorare le prestazioni.
Dbengine non lo avevo mai provato. E' una cosa "estremamente" seria 
poiche' riduce notevolmente i tempi di accesso ed ora lo voglio 
verificare sui "cicli" normali ma tendo a fidarmi della letteratura 
"colta". Come hai scritto in precedenza le funzioni di aggregazione in 
genere non "ciclano" e quindi mi va bene uno qualsiasi dei metodi ivi 
compreso ADO, fra 1 e 2 ms la mia qualita' della vita non cambia e 
soprattutto non ho interesse ne "ad essere il migliore" (cit) ne alle 
guerre sante che hanno sempre insanguinato la storia.
Vuol dire che scrivero' una famiglia C"aggrega" (C sta per Cara e viene 
prima della D) che usa dbengine.
-- 
ac
y-1=x

 Rs[ADO] ----> 110,84 ms
e i dati senza gli indici sui campi ?
Ciao
-- 
Giorgio Rancati
[Office Access MVP]

 [Office Access MVP]
Le differenze sono estremamente più contenute, e decisamente trascurabili,
ma
rispetto all'uso dell'indicizzazione come è ovvio mostrano tempi circa X10
In particolare Giorgio prova a vedere la differenza dell'ultimo Test su
Linked effettuato
su campo Text confrontato con le Local....!!
Anche questo è un risultato decisamente non aspettato, è mostruoso che su
una Linked abbia
tempi 20 volte inferiori.....!
Dal 3D originale avevi già segnalato anche tu questa "anomalia".


 Dal 3D originale avevi già segnalato anche tu questa "anomalia".
sì, se vuoi farla andare molto più veloce delle tabelle allegate fai così:
Con Recordset
----
  Set rs = DBEngine(0)(0).OpenRecordset("SELECT TOP 1 1 FROM T2 WHERE
[ID]=10000")
  ret = rs.BOF
  rs.Close
  Set rs = Nothing
-----
Con Dlookup
----
ret = Nz(DLookup("1", "T2", "[ID]=10000"), 0) > 0
----
:-)


 ha scritto nel
messaggio news:45afe0d0$0$20820$5fc...@news.tiscali.it...
ops manca un not
 ----
Set rs = DBEngine(0)(0).OpenRecordset("SELECT TOP 1 1 FROM T2 WHERE
[ID]=10000")
ret = NOT rs.BOF
rs.Close
Set rs = Nothing
 -----
Ciao


 [Office Access MVP]
Si confermo che con le modifiche che hai suggerito la situazione ritorna
nella comprensibilitŕ...!
Ricerca su Testo non indicizzato:
[Desc]='2007-100'
Linked Tradizionali Prima e dopo
DCOUNT -----> 131,65 ms
Rs[DAO] ----> 89,15 ms
Qry[DAO] ---> 68,99 ms
Rs[ADO] ----> 145,04 ms
Qry[ADO] ---> 173,76 ms
Local Prima
DCOUNT -----> 4388,48 ms
Rs[DAO] ----> 4247,34 ms
Qry[DAO] ---> 4157,73 ms
Rs[ADO] ----> 4514,01 ms
Qry[ADO] ---> 4288,78 ms
Local Dopo le modifiche
DCOUNT -----> 43,15 ms
Rs[DAO] ----> 28,94 ms
Qry[DAO] ---> 20,83 ms
Rs[ADO] ----> 85,38 ms
Qry[ADO] ---> 99,53 ms
Anche questa č estremamente interessante.
Ciao Giorgio, grazie dell'ottimo supporto.


 Anche questa è estremamente interessante.
All'atto pratico i tests dovrebbero riferirsi solo a linked tables: la
situazione in "locale" non ha un valore pratico.
Comunque avete fatto un ottimo lavoro: bravi!    ;-)
Saluti
P.S:  Alla faccia di ADO!