zoukankan      html  css  js  c++  java
  • dataset和datareader的区别

    ADO.NET2.0提供了两个用于检索关系数据的对象:DataSet和DataReader。并且这两个对象都可以将检索的关系数据存储在内存中。在软件开发过程中经常用到这两个控件,由于这两个控件在使用和功能方面的相似,很多程序员错误地认为DataSet和DataReader是可以相互替代的。这种想法是错误的,在这我们分析一下DataSet控件和DataReader控件的区别。
    ■与数据库连接
    DatSet 连接数据库时是非面向连接的。把表全部读到Sql中的缓冲池,并断开于数据库的连接。
    Datareader 连接数据库时是面向连接的。读表时,只能向前读取,读完数据后有用户决定是否断开连接。
    ■    处理数据速度
    DataSet读取、处理速度较慢。
    DataReader读取、处理速度较快。
    ■    更新数据库
    在对DataSet数据集中的数据进行更新后,可以把数据更新回原来的数据库。
    在对DataReader中的数据进行更新后,没有办法进行数据库更新。 
    ■    支持分页排序
    在DataSet中支持分页、动态排序等操作。
    在DataReader中没有分页、动态排序的功能。
    ■     占用内存
    DataSet在 IIS 服务器上所使用的内存较多。
    DataReader在 IIS 服务器上所使用的内存较少。
    综上所述得出DataSet和DataReader有各自适用的场合。如果数据来源控件只是用来填入控件的清单成为其选项,或者数据绑定控件并不需要提供排序或分页功能的话,则应该使用 DataReader。反之,如果数据绑定控件需要提供排序或分页功能的话,则必须使用 DataSet,通过DataSet设置出来分页排序等页面面显示效果。

    【转载自】:百度caishbian

  • 相关阅读:
    向Sql Server数据库插入中文时显示乱码的解决办法 (转)
    自定义控件开发知识点
    Win7旗舰版中的IIS配置asp.net的运行环境
    windows使用
    Visual Studio 2012自动添加注释(如版权信息等)
    3个线程彼此通知
    多线程12_张孝祥 java5读写锁技术的妙用
    多线程11_张孝祥 java5的线程锁技术
    Spring整合hibernate4:事务管理[转]
    HTML界面JQuery ajax 返回200,但走Error方法
  • 原文地址:https://www.cnblogs.com/rookiebob/p/3749399.html
Copyright © 2011-2022 走看看