Home | Contact Us | FAQ | Search & Site Map | Link to Us
Sign In | Join | Other 45 Sites in Network
Home
Discussion GroupsFormsForms ProgrammingQueriesModules / DAO / VBAReports / PrintingMacrosDatabase DesignSecurityConversionImporting / LinkingSQL Server / ADPMultiuser / NetworkingReplicationSetup / ConfigurationDeveloper ToolkitsActiveX ControlsNew UsersGeneral 1General 2
Access DirectoryToolsTutorialsUser Groups
Related Topics
SQL ServerOther DB ProductsMS OfficeMore Topics ...

MS Access Forum / Forms / October 2005

Tip: Looking for answers? Try searching our database.

ADODB or DAO

Thread view: 
Enable EMail Alerts  Start New Thread
Thread rating: 
DJ - 12 Oct 2005 22:27 GMT
Is there any difference in Speed?  I am currently using ADO, and more
comfortable with it, however would switch to DAO or another format if anyone
can convince me of substantial performance gains.

Thanks,

DJ
Albert D.Kallal - 12 Oct 2005 23:17 GMT
Many will point out that "dao" is the native object model for JET, and thus
the prefer it.

DAO also has some better control of the JET security object model also.

However, really, if you are comfortable with ADO, then I would continue to
use it.

ADO is a newer object model then is DAO, and I find the ADO model a little
bit "cleaner" then the DAO object model. (you don't have to issue a update
to write a record out for example). ADO is also designed as a independent
layer. So, if you later convert your
code to sql server, then that ADO code should be more at home.

And, ADO has built in support for stored procedures etc, so again if sql
server is in the future, it is a good choice.

> Is there any difference in Speed?

No, not normally. You are going through a "extra" layer, but it turns out
what you loose in that layer you get back in how well ADO handles the
connection, and also the indexing and finding of things in a reocrdset works
well in ADO. And, ADO does connect well to JET. By well, I mean I seen a few
cases where ADO used indexes better then DAO to JET, which is rather
surprising.

So, substantial performance gains?
No, 99% of the time, no difference.

And, with ADO you got a more open object model.

One big one is the DAO seek command.
dao has the "seek" command, which by the way is faster then anything to grab
data from a table in a loop for a given id each time through the loop. But
then you can't use the "seek" command on sql server tables (and, for linked
tables, you have to open the back end table via code to use seek). And, most
of the time, that loop can be replaced with some sql statement anyway.

But, in a pinch, seek is rather fast, as it is much like the old FoxPro or
dbase days, and you are direct using the engines index, and no sql....
It is blind fast, and you could use it anyway if you needed to.....

I would say you are not missing out here on a general performance issue...

Signature

Albert D. Kallal   (Access MVP)
Edmonton, Alberta Canada
pleaseNOOSpamKallal@msn.com
http://www.members.shaw.ca/AlbertKallal

Larry Linson - 15 Oct 2005 20:20 GMT
On the other hand, the successor to the "classic ADO" used in Access already
exists and is used in Dot Net. It is called ADO.NET, is not built on the
same object model, nor on OLEDb, and is quite different. Do not INVEST in
learning classic ADO, thinking that will "pay off in the future".

 Larry Linson
 Microsoft Access MVP

> Many will point out that "dao" is the native object model for JET, and
> thus
[quoted text clipped - 45 lines]
>
> I would say you are not missing out here on a general performance issue...
 
Sign In
Join
My Latest Posts
My Monitored Threads
My Blog
My Photo Gallery
My Profile
My Homepage

Start New Thread
Enable EMail Alerts
Rate this Thread



©2008 Advenet LLC   Privacy Policy - Terms of Use
This website includes both content owned or controlled by Advenet as well as content owned or controlled by third parties.