|
 |
asp_components thread: Difference between ADO and RDO
Message #1 by "cindy zhou" <czhou@w...> on Tue, 24 Sep 2002 21:24:39
|
|
Hi,
Anyone can tell me what is the exact difference between ADO and RDO. It is
said in some book that in web application "RDO allows the client computer
to actually work with data from the server, rather than just a text
rendering of that data (like ADO)". I think using ADO, the client can also
have operations on the data. So I did not quite get this. If you can
explain the difference with some simple examples, that'll be great.
I appreciate any replies.
Cindy
Message #2 by John Pirkey <mailjohnny101@y...> on Tue, 24 Sep 2002 13:56:25 -0700 (PDT)
|
|
Hello.
RDO is a)older technology, b)not as efficient, c)more complicated, and d)less
functional than ADO.
RDO still has a strict heiarchy of objects you must go through to get results,
execute sprocs, update data, etc. Starting with a Environment, then the connection
then the recordset (if i'm forgetting a layer it's because i haven't used it in a
long time). It was a great thing when it first came out, it allowed for developers
to connect to network databases a lot easier than trying to get DAO to do it. and
it was faster for that stuff than DAO. However, once ADO was released - it was
something totally different. No longer were you forced to create "parent" objects
in order to get to what you want - the data. It was streamlined for network
database access (sql server, oracle, db2 etc). It allowed for connecting to many
more databases (or data "stores" - like MS Exchange, ADSI, Excel, and more).
But, now that ADO has been out for a while, people are noticing things they didn't
see at first. ADO recordsets usually have THREE copies of the recordset in memory,
whereas (afaik) RDO only had one. Why three? One that represents the database's
copy of the records (the original), one with which you are currently working (the
only one you see), and another that represents the state of those records the
instant they were returned (which could be different from both your working version
and the data that's in the database). What are these for? They are used to
determine the validity of the data you're trying to update. Let me back up a bit
and say that you probably wont ever need to worry about this - because a)it's only
an issue if you use disconnected recordsets and b)ADO.Net is out and it's now the
norm, instead of the exception.
I've really gotten on a soapbox here, sorry about that. Let me step away from the
box.
RDO was good when that's all there was - ADO is better (and the general preferred
method). ADO.Net is still under review by the masses, and not something you should
be terribly concerned about at this point.
Hope this helps,
john
--- cindy zhou <czhou@w...> wrote:
> Hi,
>
> Anyone can tell me what is the exact difference between ADO and RDO. It is
> said in some book that in web application "RDO allows the client computer
> to actually work with data from the server, rather than just a text
> rendering of that data (like ADO)". I think using ADO, the client can also
> have operations on the data. So I did not quite get this. If you can
> explain the difference with some simple examples, that'll be great.
>
> I appreciate any replies.
>
> Cindy
>
> To unsubscribe send a blank email to %%email.unsub%%
>
=====
----------------------------
John Pirkey
MCSD
http://www.stlvbug.org
__________________________________________________
Do you Yahoo!?
New DSL Internet Access from SBC & Yahoo!
http://sbc.yahoo.com
Message #3 by "Adrian Forbes" <adrian.forbes@n...> on Wed, 25 Sep 2002 09:37:38 +0100
|
|
Put simply - ADO you use, RDO you don't ;)
I'd hope that the book you are reading from is a few years old, as when ADO
first came out it was *ok*, but there were a lot of RDO apps out there which
would be too much effort to convert, and if you wanted to use SQL Server
then RDO was still the faster option as it was specifically designed as a
low-level interface to SQL Server. Likewise DAO was an interface to JET.
But MS urged people to use ADO to "future proof" their code.
Now that OLEDB has been refined and made more efficient you probably won't
see any performance difference so there is no need for RDO any more.
However I see MS are taking a slightly backward step in that ADO.NET has SQL
Server specific providers to make it that much faster.
-----Original Message-----
From: cindy zhou [mailto:czhou@w...]
Sent: Tuesday, September 24, 2002 9:25 PM
To: ASP components
Subject: [asp_components] Difference between ADO and RDO
Hi,
Anyone can tell me what is the exact difference between ADO and RDO. It is
said in some book that in web application "RDO allows the client computer
to actually work with data from the server, rather than just a text
rendering of that data (like ADO)". I think using ADO, the client can also
have operations on the data. So I did not quite get this. If you can
explain the difference with some simple examples, that'll be great.
I appreciate any replies.
Cindy
%%email.unsub%%
Message #4 by "cindy zhou" <czhou@w...> on Wed, 25 Sep 2002 14:01:08
|
|
Thanks very much for the explanation, John. It really helps.
Cindy
Message #5 by "cindy zhou" <czhou@w...> on Wed, 25 Sep 2002 18:29:02
|
|
Adrian:
Thanks for your reply.
The book I am reading is about SQL server 2000 (published in 2000), there
is a chapter talking about web development. My question "Difference
between ADO and RDO" is arise from the paragraph in that chapter:
"Using ADO in ASP pages allows you to present data in HTML format on the
client. However, sometimes that's not enough. It may be necessary,
particularly on intranets, to allow the client computer to actually work
with data from the server, rather than just a text rendering of that data.
Of course, you can accomplish this by building a traditional client
application in, say, Visual Basic that uses ADO for its connection to the
server. However, there's another alternative that allows you to use the
Web to connect to a server while still maintaining an object-oriented view
of the data on the server."
What do they mean "maintaining an object-oriented view of the data on the
server."? I think in ASP pages, using ADO can also allow client computer
to update or do some other operations on the data from the server, is it?
What is it exactly that RDO can do and ADO cannot, except for the speed
part? I would appreciate your help.
Cindy
Message #6 by "Adrian Forbes" <adrian.forbes@n...> on Thu, 26 Sep 2002 10:01:43 +0100
|
|
> What do they mean "maintaining an object-oriented view of the data on the
> server."? I think in ASP pages, using ADO can also allow client computer
> to update or do some other operations on the data from the server, is it?
> What is it exactly that RDO can do and ADO cannot, except for the speed
> part? I would appreciate your help.
If I'm honest I don't understand. I don't think it is good or clear advice
either. Today there is no reason to use RDO at all. It gives nothing that
ADO doesn't. ADO can also use the web (HTTP I guess) and can also work
whilst leaving the data on the server (ie it can use a server-side cursor).
I wouldn't worry about it.
|
|
 |