What is the Difference between Dataset and Datareader?
Answer Posted / khawar rizvi
DataReader
Datareader is like a forward only recordset. It fetches one
row at a time so very less Network Cost compare to DataSet
(Fetches all the rows at a time). DataReader is readonly so
we cannot do any transaction on them. DataReader will be
the best choice where we need to show the data to the user
which requires no transaction ie reports. Due to DataReader
is forward only we cannot fetch the data randomly. .NET
Dataproviders optimizes the datareaders to handle the huge
amount of data.
DataSet
DataSet is always a bulky object that requires lot of
memory space compare to DataReader. We can say the dataset
as a small database coz it stores the schema and data in
the application memory area. DataSet fetches all data from
the datasource at a time to its memory area. So we can
traverse through the object to get required data like
qureying database.
The dataset maintains the relationships among the
datatables inside
it. We can manipulate the realational data as XML using
dataset.We can do transactions (insert/update/delete) on
them and finally the modifications can be updated to the
actual database. This provides impressive flexibility to
the application but with the cost of memory space. DataSet
maintains the original data and the modified data
seperately which requires more memory space. If the amount
of data in the dataset is huge
then it will reduce the applications performance
dramatically.
The following points will improve the performane of a
dataset...
1. Don't use the commandbuilder to generate the sql
statements.
Though it reduces the development time the query generated
by the command builder will not be always as required. For
example
To update the details of an author table the command
| Is This Answer Correct ? | 45 Yes | 10 No |
Post New Answer View All Answers
What is the use of assembly?
What is the difference between vb 6 and vb.net?
What are the advantages of VB.NET?
Explain the difference between value and reference types?
What is redim keyword and its use?
How do you script this scenario in QTP using VB? Verify XML attributes in XML message against XSD and data mapping of fields to Oracle tables? Verify data in XML to data in a defined table?
What is the use of errorprovider control?
What is multiple form in vb?
Can you please explain the difference between value and reference types?
What are the different variables in vb.net?
What is a stream in vb.net?
What is misl code?
What is the use of system.diagnostics.process class?
Define clr?
what is interface and when it is used?