Wrox Home  
Search P2P Archive for: Go

  Return to Index  

access thread: ADO vs DAO Performance


Message #1 by "Paul McLaren" <paulmcl@t...> on Thu, 17 Jan 2002 10:52:06
Anyone done any tests or have any info on which is faster - ADO or DAO.



The scenario would be a frontend user database with forms etc and backend 

database holding the tables.



Both the frontend and backend would be in Access.



I have done some initial tests creating a loop that opens the connection, 

writes a new record and closes the connection, this is repeated in 100 

times.



ADO is coming out 3 times slower than DAO.



Any views are appreciated (or am I missing the point!)



Thanks



Paul
Message #2 by Walt Morgan <wmorgan@s...> on Thu, 17 Jan 2002 08:31:32 -0600
For what it's worth: I agree that DAO seems to outperform ADO on access MDBs



Walt





Message #3 by "Enzo Zaragoza" <enzaux@y...> on Thu, 17 Jan 2002 22:55:49 +0800
This is a multi-part message in MIME format.



------=_NextPart_000_0015_01C19FAA.1B248740

Content-Type: text/plain;

	charset="Windows-1252"

Content-Transfer-Encoding: quoted-printable



I thought ADO was more latest than DAO then why is DAO faster than ADO?



I find ADO more easy to code rather than DAO its too much complicated.



Enzo :)

  ----- Original Message -----

  From: Walt Morgan

  To: Access

  Sent: Thursday, January 17, 2002 10:31 PM

  Subject: [access] Re: ADO vs DAO Performance





  For what it's worth: I agree that DAO seems to outperform ADO on 

access MDBs



  Walt










$subst('Email.Unsub').










_________________________________________________________



Do You Yahoo!?



Get your free @yahoo.com address at http://mail.yahoo.com







Message #4 by "David Adams" <davidadams00@h...> on Thu, 17 Jan 2002 10:38:50 -0500
This is a multi-part message in MIME format.



------=_NextPart_000_00D4_01C19F43.26BA8DF0

Content-Type: text/plain;

	charset="Windows-1252"

Content-Transfer-Encoding: quoted-printable



Having been involved in some of the "testing" that different groups have 

done to clock the situation that this thread references, DAO does clock 

faster using Access Databases for applications that a) have local, 

mapped-drive databases and b) have very few users. 



You can replicate a similar test by just creating a Test application to 

process some SQL statement against the Northwind Database and clock the 

time from button "click" to query populate in a grid.  I don't remember 

the particular numbers, but DAO was a bit faster.



That said - I write almost ALL of my code using ADO since I prefer my 

applications to a) be easy to move and/or use as IP addresses/machine 

names as opposed to mapped drives and b) be easily scalable beyond 4 or 

5 users without serious degradation.



Frankly, the only situation which I can imagine right now that I would 

use DAO is for a small local database that is built to each user's 

machine that stores application preferences.  But then, I would probably 

just use an XML file that stored that information, which would have a 

smaller footprint. 



Hope this helps,

David Adams

  ----- Original Message -----

  From: Enzo Zaragoza

  To: Access

  Sent: Thursday, January 17, 2002 9:55 AM

  Subject: [access] Re: ADO vs DAO Performance





  I thought ADO was more latest than DAO then why is DAO faster than 

ADO?



  I find ADO more easy to code rather than DAO its too much complicated.



  Enzo :)

    ----- Original Message -----

    From: Walt Morgan

    To: Access

    Sent: Thursday, January 17, 2002 10:31 PM

    Subject: [access] Re: ADO vs DAO Performance





    For what it's worth: I agree that DAO seems to outperform ADO on 

access MDBs



    Walt










$subst('Email.Unsub').




$subst('Email.Unsub').




Message #5 by "Sameer Peera" <dreamreapr@a...> on Wed, 23 Jan 2002 03:22:50
Hi Paul,



From a book on Access Programming:



"Using ADO with a Jet Database can result in five to ten times slower 

performance than using DAO. When you query a database using ADO, it must 

retrieve information about the database before it can communicate with it. 

ADO treats all databases as external databases. So, even though you are 

building an Access application against an Access database, ADO still has 

to retreive this information. Since DAO was optimized for accessing Jet 

databases, it already has most of the information it needs abou tthe 

database."



Hope this helps..



-Sameer



> Anyone done any tests or have any info on which is faster - ADO or DAO.

> 

> The scenario would be a frontend user database with forms etc and 

backend 

> database holding the tables.

> 

> Both the frontend and backend would be in Access.

> 

> I have done some initial tests creating a loop that opens the 

connection, 

> writes a new record and closes the connection, this is repeated in 100 

> times.

> 

> ADO is coming out 3 times slower than DAO.

> 

> Any views are appreciated (or am I missing the point!)

> 

> Thanks

> 

> Paul
Message #6 by "Paul McLaren" <paulmcl@t...> on Wed, 23 Jan 2002 19:16:08 -0000
Thanks to all who contributed on this one, strange findings from what I

read.



Thanks



Paul







-----Original Message-----

From: Sameer Peera [mailto:dreamreapr@a...] 

Sent: 23 January 2002 03:23

To: Access

Subject: [access] Re: ADO vs DAO Performance





Hi Paul,



From a book on Access Programming:



"Using ADO with a Jet Database can result in five to ten times slower 

performance than using DAO. When you query a database using ADO, it must



retrieve information about the database before it can communicate with

it. 

ADO treats all databases as external databases. So, even though you are 

building an Access application against an Access database, ADO still has



to retreive this information. Since DAO was optimized for accessing Jet 

databases, it already has most of the information it needs abou tthe 

database."



Hope this helps..



-Sameer



> Anyone done any tests or have any info on which is faster - ADO or 

> DAO.

> 

> The scenario would be a frontend user database with forms etc and

backend 

> database holding the tables.

> 

> Both the frontend and backend would be in Access.

> 

> I have done some initial tests creating a loop that opens the

connection, 

> writes a new record and closes the connection, this is repeated in 100

> times.

> 

> ADO is coming out 3 times slower than DAO.

> 

> Any views are appreciated (or am I missing the point!)

> 

> Thanks

> 

> Paul









  Return to Index