473,796 Members | 2,655 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

DAO vs ADO

ADO Code 66 Seconds

Set dcndb = New ADODB.Connectio n
dcndb.Provider = "Microsoft.Jet. OLEDB.4.0"
dcndb.Connectio nString = "Data Source=" + dtbs$
dcndb.Open
Set rsUsers = New ADODB.Recordset
rsUsers.Open Sql$, dcndb, adOpenForwardOn ly, adLockReadOnly

DAO Code 20 Seconds

Set rDb = DBEngine.Worksp aces(0).OpenDat abase(dtbs$)
Set rsUsers = rDb.OpenRecords et(Sql$)

*** Sent via Developersdex http://www.developersdex.com ***
Jan 3 '07 #1
18 8520
DAO is specially optimized for ACCESS ( Native )

ADO is just a uniform way of acessing datasources through a provider
so they can`t be compared in this way

And for .Net they are both Obsolete so irrelevant ( DAO was / is even
obsolete for VB6 )

As we are here in microsoft.publi c.dotnet , we do it now the recomended way
import all data to a SQL 2005 MDF with SMS , now create T-SQL query`s , and
now analyze this query in the database engine tuning advisor , apply al
recomendations , now run this query from your VB.Net application ( with the
sql native client provider )

what do you see now ?

You wil probably see that the access database performance is blown away and
we ar not even at max , cause we could also create SP`s , indexed views ,
create functions etc etc to do some final tuning , however this requires
skills that most VB proggers do not posess

regards

Michel


"Alan Welsford" wrote:
ADO Code 66 Seconds

Set dcndb = New ADODB.Connectio n
dcndb.Provider = "Microsoft.Jet. OLEDB.4.0"
dcndb.Connectio nString = "Data Source=" + dtbs$
dcndb.Open
Set rsUsers = New ADODB.Recordset
rsUsers.Open Sql$, dcndb, adOpenForwardOn ly, adLockReadOnly

DAO Code 20 Seconds

Set rDb = DBEngine.Worksp aces(0).OpenDat abase(dtbs$)
Set rsUsers = rDb.OpenRecords et(Sql$)

*** Sent via Developersdex http://www.developersdex.com ***
Jan 3 '07 #2
"Alan Welsford" <me*****@kingsl ey.co.zawrote in message
news:u8******** ******@TK2MSFTN GP02.phx.gbl...
ADO Code 66 Seconds

Set dcndb = New ADODB.Connectio n
dcndb.Provider = "Microsoft.Jet. OLEDB.4.0"
dcndb.Connectio nString = "Data Source=" + dtbs$
dcndb.Open
Set rsUsers = New ADODB.Recordset
rsUsers.Open Sql$, dcndb, adOpenForwardOn ly, adLockReadOnly

DAO Code 20 Seconds

Set rDb = DBEngine.Worksp aces(0).OpenDat abase(dtbs$)
Set rsUsers = rDb.OpenRecords et(Sql$)

*** Sent via Developersdex http://www.developersdex.com ***
Well, the 66 seconds for ADO does seem an inordinate time as does 20 seconds
for DAO, however, the query may be designed to be resource intensive.

DAO has always far outperformed ADO (ADO.Net appears to have bridged that
gap to some extent). It should be noted that ADO does have a higher overhead
given the added functionallity it exposes. Having said that, DAO does
perform beautifully and still exposes enough methods to please most. Just to
get a new identity value in DAO leaves ADO for dead.

If you want to use Access as a back end, DAO is your man. This statement may
be inappropriate given the following:

1. Have not tested how DAO plays with Access 2007
2. Given the massive changes MS have made to VB, DAO may not work at some
later date. Our tests with Vista show DAO is still fine there.
3. DAO can still exhibit some data instability, althought this seems to
be a rare occurrence.

Just by coincidence, I am currently finishing a VB6/DAO project for a
friend. While I really love the power of VB.Net, the VB6/DAO combination is
still really cool for a quick rollout.

Cheers

Harry

Jan 3 '07 #3
"Michel Posseth [MCP]" <Mi************ **@discussions. microsoft.comwr ote in
message news:C5******** *************** ***********@mic rosoft.com...
wait !!! before i start a flame war :-)

when i reread the below line i thought it might be interpreted the wrong
way
>however this requires
skills that most VB proggers do not posess

With this line i actually mean that not all VB ( or C# , J# etc etc )
coders have enough knowledge of SQL server to perform these tasks . That`s
why we have Dba`s .

regards
I think every Programmer should be aware of what he does to a DB. I think
this is a skill essential to developing "big" applications. I have seen
VB/C#/... Code that made me "cry" several times already and i can attest
that there are many out there who are not even "helped" by Moores law...

Also... a querry that runs over 20 seconds is something i dont "like" Its to
slow no matter what tecnology you are using ;)

Jan 3 '07 #4
Michel,

Do you mean that this will only work in China.
To most proggers even the normallization rules are new chinese
:-)

Cor
Jan 5 '07 #5

I disagree with your analysis of DAO vs ADO.

for starters, MDB is a DEAD FORMAT, anyone that uses it anywhere should
be fired and then spit upon.

and try comparing that to an Access Data Project and ADO

we don't have DBAs; you _ARE_ the DBA

if you don't know enoug about SQL to build a database from scratch then
you shouldn't be a programmer

-Aaron

Michel wrote:
wait !!! before i start a flame war :-)

when i reread the below line i thought it might be interpreted the wrong way
however this requires
skills that most VB proggers do not posess

With this line i actually mean that not all VB ( or C# , J# etc etc )
coders have enough knowledge of SQL server to perform these tasks . That`s
why we have Dba`s .

regards

Michel



"Michel Posseth [MCP]" wrote:
DAO is specially optimized for ACCESS ( Native )

ADO is just a uniform way of acessing datasources through a provider
so they can`t be compared in this way

And for .Net they are both Obsolete so irrelevant ( DAO was / is even
obsolete for VB6 )

As we are here in microsoft.publi c.dotnet , we do it now the recomended way
import all data to a SQL 2005 MDF with SMS , now create T-SQL query`s , and
now analyze this query in the database engine tuning advisor , apply al
recomendations , now run this query from your VB.Net application ( with the
sql native client provider )

what do you see now ?

You wil probably see that the access database performance is blown away and
we ar not even at max , cause we could also create SP`s , indexed views ,
create functions etc etc to do some final tuning , however this requires
skills that most VB proggers do not posess

regards

Michel


"Alan Welsford" wrote:
ADO Code 66 Seconds
>
Set dcndb = New ADODB.Connectio n
dcndb.Provider = "Microsoft.Jet. OLEDB.4.0"
dcndb.Connectio nString = "Data Source=" + dtbs$
dcndb.Open
Set rsUsers = New ADODB.Recordset
rsUsers.Open Sql$, dcndb, adOpenForwardOn ly, adLockReadOnly
>
DAO Code 20 Seconds
>
Set rDb = DBEngine.Worksp aces(0).OpenDat abase(dtbs$)
Set rsUsers = rDb.OpenRecords et(Sql$)
>
>
>
*** Sent via Developersdex http://www.developersdex.com ***
>
Jan 5 '07 #6
DAO isn't included in WIndows XP, Office 2000 or Office 2002

get a fucking clue kids

DAO has been obsolete for a decade
it's _NEVER_ been faster

-Aaron
Harry Strybos wrote:
"Alan Welsford" <me*****@kingsl ey.co.zawrote in message
news:u8******** ******@TK2MSFTN GP02.phx.gbl...
ADO Code 66 Seconds

Set dcndb = New ADODB.Connectio n
dcndb.Provider = "Microsoft.Jet. OLEDB.4.0"
dcndb.Connectio nString = "Data Source=" + dtbs$
dcndb.Open
Set rsUsers = New ADODB.Recordset
rsUsers.Open Sql$, dcndb, adOpenForwardOn ly, adLockReadOnly

DAO Code 20 Seconds

Set rDb = DBEngine.Worksp aces(0).OpenDat abase(dtbs$)
Set rsUsers = rDb.OpenRecords et(Sql$)

*** Sent via Developersdex http://www.developersdex.com ***

Well, the 66 seconds for ADO does seem an inordinate time as does 20 seconds
for DAO, however, the query may be designed to be resource intensive.

DAO has always far outperformed ADO (ADO.Net appears to have bridged that
gap to some extent). It should be noted that ADO does have a higher overhead
given the added functionallity it exposes. Having said that, DAO does
perform beautifully and still exposes enough methods to please most. Just to
get a new identity value in DAO leaves ADO for dead.

If you want to use Access as a back end, DAO is your man. This statement may
be inappropriate given the following:

1. Have not tested how DAO plays with Access 2007
2. Given the massive changes MS have made to VB, DAO may not work at some
later date. Our tests with Vista show DAO is still fine there.
3. DAO can still exhibit some data instability, althought this seems to
be a rare occurrence.

Just by coincidence, I am currently finishing a VB6/DAO project for a
friend. While I really love the power of VB.Net, the VB6/DAO combination is
still really cool for a quick rollout.

Cheers

Harry
Jan 5 '07 #7

aa*********@gma il.com wrote:
DAO isn't included in WIndows XP, Office 2000 or Office 2002

get a fucking clue kids

DAO has been obsolete for a decade
it's _NEVER_ been faster

-Aaron
DAO was always faster than ADO for Access DB. But since the new ADO.Net
there is people saying it's faster some say it's equivalent.

Jan 5 '07 #8
you're so fucking full of shit dude

DAO was never faster ONCE than ADO

-Aaron

Franck wrote:
aa*********@gma il.com wrote:
DAO isn't included in WIndows XP, Office 2000 or Office 2002

get a fucking clue kids

DAO has been obsolete for a decade
it's _NEVER_ been faster

-Aaron

DAO was always faster than ADO for Access DB. But since the new ADO.Net
there is people saying it's faster some say it's equivalent.
Jan 5 '07 #9

aa*********@gma il.com wrote:
you're so fucking full of shit dude

DAO was never faster ONCE than ADO
I tried few query :
at 1241 record output DAO is 4 sec faster than ADO
at 11635 record output DAO is 17 sec faster than ADO

DAO ADO jet.4.0 in access

so your comment doesnt apply to my case, i was always faster than ADO
for me and it's still faster, maybe depend on your opinion that is
wrong and youll keep stick to it because i know you are closed minded

Jan 5 '07 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

3
11248
by: William C. White | last post by:
Does anyone know of a way to use PHP /w Authorize.net AIM without using cURL? Our website is hosted on a shared drive and the webhost company doesn't installed additional software (such as cURL) on the server because of that. Our site will have an SSL certificate next week, so I would like to use AIM instead of SIM, however, I don't know how to send data via POST over https and recieve data from the Authorize.net server over an https...
2
5844
by: Albert Ahtenberg | last post by:
Hello, I don't know if it is only me but I was sure that header("Location:url") redirects the browser instantly to URL, or at least stops the execution of the code. But appearantely it continues to execute the code until the browser send his reply to the header instruction. So an exit(); after each redirection won't hurt at all
3
23040
by: James | last post by:
Hi, I have a form with 2 fields. 'A' 'B' The user completes one of the fields and the form is submitted. On the results page I want to run a query, but this will change subject to which field is completed.
0
8497
by: Ollivier Robert | last post by:
Hello, I'm trying to link PHP with Oracle 9.2.0/OCI8 with gcc 3.2.3 on a Solaris9 system. The link succeeds but everytime I try to run php, I get a SEGV from inside the libcnltsh.so library. 354 roberto@ausone:Build/php-4.3.2> ldd /opt/php4/bin/php libsablot.so.0 => /usr/local/lib/libsablot.so.0 libstdc++.so.5 => /usr/local/lib/libstdc++.so.5 libm.so.1 => /usr/lib/libm.so.1
1
8611
by: Richard Galli | last post by:
I want viewers to compare state laws on a single subject. Imagine a three-column table with a drop-down box on the top. A viewer selects a state from the list, and that state's text fills the column below. The viewer can select states from the drop down lists above the other two columns as well. If the viewer selects only one, only one column fills. If the viewer selects two states, two columns fill. Etc. I could, if appropriate, have...
4
18307
by: Albert Ahtenberg | last post by:
Hello, I have two questions. 1. When the user presses the back button and returns to a form he filled the form is reseted. How do I leave there the values he inserted? 2. When the user comes back to a page where he had a submitted POST data the browser keeps telling that the data has expired and asks if repost. How to avoid that? I tried registering all POST and GET vars as SESSION vars but
1
6870
by: inderjit S Gabrie | last post by:
Hi all Here is the scenerio ...is it possibly to do this... i am getting valid course dates output on to a web which i have designed ....all is okay so far , look at the following web url http://www.mis.gla.ac.uk/biquery/training/ but each of the courses held have maximum of 8 people that could be
2
31445
by: Jack | last post by:
Hi All, What is the PHP equivilent of Oracle bind variables in a SQL statement, e.g. select x from y where z=:parameter Which in asp/jsp would be followed by some statements to bind a value to :parameter I dont like the idea of making the SQL statement on the fly without binding parameters as I dont want a highly polluted SQL cache.
3
23603
by: Sandwick | last post by:
I am trying to change the size of a drawing so they are all 3x3. the script below is what i was trying to use to cut it in half ... I get errors. I can display the normal picture but not the results of the picture half the size. The PHP I have installed support 1.62 or higher. And all I would like to do is take and image and make it fit a 3x3. Any suggestions to where I should read or look would be appreciated.
0
10465
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10242
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven tapestry of website design and digital marketing. It's not merely about having a website; it's about crafting an immersive digital experience that captivates audiences and drives business growth. The Art of Business Website Design Your website is...
1
10200
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows Update option using the Control Panel or Settings app; it automatically checks for updates and installs any it finds, whether you like it or not. For most users, this new feature is actually very convenient. If you want to control the update process,...
0
10021
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
7558
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5453
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
0
5582
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
2
3744
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2931
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.