DataReader/DataSet区别 ?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DataReader/DataSet区别 ?相关的知识,希望对你有一定的参考价值。

参考技术A DataReader和DataSet最大的区别在于,DataReader使用时始终占用SqlConnection,在线操作数据库..任何对SqlConnection的操作都会引发DataReader的异常..因为DataReader每次只在内存中加载一条数据,所以占用的内存是很小的..因为DataReader的特殊性和高性能.所以DataReader是只是向前读的
读了第一条后就不能再去读取第一条了dataSet则是将数据一次性加载在内存中.抛弃数据库连接读取完毕即放弃数据库连接因为DataSet将数据全部加载在内存中.所以比较消耗内存但是确比DataReader要灵活可以动态的添加行,列,数据.对数据库进行回传更新操作

DataSet和DataReader问题

我要做一个网站,读取数据是选用DataSet还是用DataReader?哪个好, 因为我实体类有表类型,如果用DataSet的话不能对应它们的关系, 如: private int iD; private UserInfo userID; 这里面的UserInfo是一个实体类类型, 对应的就是一个数据表, 如查用DataReader的话,返回的是一个List集合, 想请问一下大家该怎么选择?请详细回答一下, 还有就是一个项目读取数据是用DataSet和DataReader中的一种,还是两个都要用到?

参考技术A 如果一次性读取的数据量较大建议使用DataSet,DataSet读取之后占的是内存空间,但是现在一般的电脑都有1G以上的内存,所以这点内存算不了什么。完全可以忽略。如果使用DataReader可能会导致网站读取数据的时候
出现假死现象。(千条以上)
如果是少量数据
建议使用DataReader,读取速度较快。让用户体验的舒服些。

以上是关于DataReader/DataSet区别 ?的主要内容,如果未能解决你的问题,请参考以下文章

DATASET 和 DATAREADER区别

Datareader、DataAdapter、Dataset、DataView 的区别

dataset和datatable的区别

DataReader和DataSet的异同之处。

DataRead和DataSet的异同

C#中IDataReader和DataSet的区别是啥呢?