difference between ADO and ADO.NET?

The old ADO (ActiveX Data Object) has evolved to ADO.NET in the .NET Framework. The ADO.NET object is a lightweight object. The ADO Recordset was a huge object in ADO. It provided the ability to support multiple types of cursors. It provided fast lightweight "firehose" cursor and also supported a disconnected client-side cursor that supported tracking, optimistic locking, and automatic batch updates of a central database. However, all of this functionality was difficult to customize.
ADO.NET breaks the functionality of the ADO object to multiple classes, thereby allowing a focused approach to developing code. The ADO.NET DataReader is equivalent to the "firehose" cursor. The DataSet is a disconnected cache with tracking and control binding functionality. The DataAdapter provides the ability to completely customize how the central data store is updated with the changes to a DataSet.



......................................................................................................................................................................................................................
ADO and ADO.NET are different in several ways:

· ADO works with connected data. This means that when you access data, such as viewing and updating data, it is real-time, with a connection being used all the time. This is barring, of course, you programming special routines to pull all your data into temporary tables.

ADO.NET uses data in a disconnected fashion. When you access data, ADO.NET makes a copy of the data using XML. ADO.NET only holds the connection open long enough to either pull down the data or to make any requested updates. This makes ADO.NET efficient to use for Web applications. It's also decent for desktop applications.

· ADO has one main object that is used to reference data, called the Recordset object. This object basically gives you a single table view of your data, although you can join tables to create a new set of records. With ADO.NET, you have various objects that allow you to access data in various ways. The DataSet object will actually allow you to store the relational model of your database. This allows you to pull up customers and their orders, accessing/updating the data in each related table individually.

· ADO allows you to create client-side cursors only, whereas ADO.NET gives you the choice of either using client-side or server-side cursors. In ADO.NET, classes actually handle the work of cursors. This allows the developer to decide which is best. For Internet development, this is crucial in creating efficient applications.

· Whereas ADO allows you to persist records in XML format, ADO.NET allows you to manipulate your data using XML as the primary means. This is nice when you are working with other business applications and also helps when you are working with firewalls because data is passed as HTML and XML.



.........................................................................................................................................


Difference between Ado and Ado.net
1. In ADO, the in-memory representation of data is the recordset.
In ADO.NET, it is the dataset
2. .A recordset looks like a single table. 
If a recordset is to contain data from multiple database tables, it must use a JOIN query, which assembles the data from the various database tables into a single result table.Dataset uses relations to join tables
3. In ADO you scan sequentially through the rows of the recordset using the ADO MoveNext method.
In ADO.NET, rows are represented as collections, 
so you can loop through a table as you would through any collection,
or access particular rows via ordinal or primary key index. 
4. A cursor is a database element that controls record navigation, 
the ability to update data, and the visibility of changes made to the database by other users. 
ADO.NET does not have an inherent cursor object, but instead includes data classes 
that provide the functionality of a traditional cursor. For example,
the functionality of a forward-only, read-only cursor is available in the ADO.NET DataReader object. For more information 

5. In ADO.NET you open connections only long enough to 
perform a database operation, such as a Select or Update. 
You can read rows into a dataset and then work with them without staying 
connected to the data source. In ADO the recordset can provide disconnected access, 
but ADO is designed primarily for connected access.

6. There is one significant difference between disconnected
processing in ADO and ADO.NET. In ADO you 
communicate with the database by making calls to an OLE DB provider.
In ADO.NET you communicate with the database through a data adapter
which makes calls to an OLE DB provider or the APIs provided by the 
underlying data source. The important difference is that in ADO.NET the data adapter 
allows you to control how the changes to the dataset are transmitted to the database — by optimizing for
performance, performing data validation checks, or adding any other extra processing.
7. Transmitting an ADO.NET dataset between applications 
is much easier than transmitting an ADO disconnected recordset. 
To transmit an ADO disconnected recordset from one component to another, 
you use COM marshalling. To transmit data in ADO.NET, you use a dataset, 
which can transmit an XML stream.
....................................................................................
ADO and ADO.NET are different in several ways:
? ADO works with connected data. This means that when 
you access data, such as viewing and updating data, it is 
real-time, with a connection being used all the time. This 
is barring, of course, you programming special routines to 
pull all your data into temporary tables. 
ADO.NET uses data in a disconnected fashion. When you 
access data, ADO.NET makes a copy of the data using XML. 
ADO.NET only holds the connection open long enough to 
either pull down the data or to make any requested updates. 
This makes ADO.NET efficient to use for Web applications. 
It's also decent for desktop applications.
? ADO has one main object that is used to reference 
data, called the Recordset object. This object basically 
gives you a single table view of your data, although you 
can join tables to create a new set of records. With 
ADO.NET, you have various objects that allow you to access 
data in various ways. The Dataset object will actually 
allow you to store the relational model of your database. 
This allows you to pull up customers and their orders, 
accessing/updating the data in each related table 
individually.
? ADO allows you to create client-side cursors only, 
whereas ADO.NET gives you the choice of either using client-
side or server-side cursors. In ADO.NET, classes actually 
handle the work of cursors. This allows the developer to 
decide which is best. For Internet development, this is 
crucial in creating efficient applications.
? Whereas ADO allows you to persist records in XML 
format, ADO.NET allows you to manipulate your data using 
XML as the primary means. This is nice when you are working 
with other business applications and also helps when you 
are working with firewalls because data is passed as HTML 
and XML.
  .....................................................................................................................................................



0 comments:

Post a Comment