。你可以通过明智的缓存来最小化数据库往返,从而降低DataSet类的“性能损害”。DataReader和DataSet都是一个成功的ASPNETWeb应用程序的重要的部件。重要的是,我们需要了解何时、在哪里可以最好的使用它们。答!:3DataReader只读的,先前的,读完就跟服务器断开了,读取数据数库快DataSet内存中的表的集合就像一个虚拟的database适合一些数据处理的操作答!:4Dataset填充后就断开数据库了,datareader在没有读完之前都是连着的,而且是只读的DataReader与DataSet有什么区别?dataset表示一个数据集,是数据在内存中的缓存。可以包括多个表DatSet连接数据库时是非面向连接的。把表全部读到Sql中的缓冲池,并断开于数据库的连接datareader连接数据库时是面向连接的。读表时,只能向前读取,读完数据后有用户决定是否断开连接。
f分布式系统的数据可能会用dataset做数据载体,因为dataset是保存数据的数据结构,而DataReader不承担保存数据的责任,它只负责从数据源读取数据到本地而已,它不是数据结构,而是网络通讯组件的高层封装。DataAdapter也只是使用DataReader从数据源读取数据并Add到dataset保存起来而已。假如我们单独使用DataReader也可以把数据写入到业务类或者dataset里。那只是根据业务需要而选择不同的数据载体而已。实际上我们从数据库获得数据都会通过DataReader,只不过DataAdapter把这一切都封装起来了dataset和datareader对象有什么区别?DataSet可以离线处理,前后滚动DataReader不能离线处理,且是只读的向前的,不过速度明显会很快DataSet可以存储数据库各种对象的,比如表触发器等,而DataReader只能存储游标记录DataSet可以更新回原来的数据库,DataReader不行;DataSet可以FORWORDPREVIUS,而DataReader只能FW;
DataReader类似一个只能向前的游标记录集DataSet叫数据集!ADO
et相对与ADO实现断开式数据库连接性的主要体现!是DateReader是一个客户端的只向前游标,两者的应用领域不同!读取数据后!如果要进行比较频繁的改动,可以使用DataSet,并且DataSet也支持串行化,可与xslt结合!进行web开发!DataReader则偏向于快速读取数据!针对数据量比较大的数据可能应用的更加频繁点!三ADONET提供以下两个对象,用于检索关系数据并将其存储在内存中:DataSet和DataReader。DataSet提供一个内存中数据的关系表示形式,一整套包括一些表在内的数据(这些表包含数据、对数据进行排序并约束数据),以及表之间的关系。DataReader提供一个来自数据库的快速、仅向前、只读数据流。r