`

ADO.NET的DataSet和ADO的Recordset的比较

 
阅读更多
<iframe align="center" marginwidth="0" marginheight="0" src="http://www.zealware.com/csdnblog336280.html" frameborder="0" width="336" scrolling="no" height="280"></iframe>
导 读:在ADO中我们最常使用的对象就Recordset了,而在ADO.NET中又增加了一个对象DataSet。本文简要的对比了DateSet和Recordset的异同,这对ADO.NET的初学者非常有帮助!
翻译整理:.net技术网(www.51dotnet.com)郜飞
原文出处:http://www.database-applications.net/articles/dotnet4.html

Recordset是一个连接或断开的(通过使用游标)的记录集合,它被定义成数据表。DataSet是一个断开的记录集合,它可以作为在内存中使用的数据集。

Recordset和数据的提供者有关:有些数据提供者不支持一些recordset的方法和特性。相反,DataSet的不同方法例如查询、排序、筛选和更新等等,都是独立于数据提供者的。

当新版本的ADO允许recordset被保存或转换到XML以至于数据能被传递到应用程序里和越过防火墙,DataSet则不需要转换就能完成相同的任务,因为DataSet在XML中被声明过。

Recordset是非类型的,意思是它把每个数据作为variant变量来存储。然而,DataSet是强类型的,它把数据按照原来的类型存储。强类型意味着更规范的编程方式和减少错误。

通过ADO的recordset来更新数据库是繁琐的、低效率的和低成功率的。举个例子,如果有五十个记录要被更新,还有一个记录不能被更新,数据库将拒绝整个recordset。这个问题在DataSet中就不存在,因为DataSet能通过它的rowerror特性来一行一行的捕捉错误。除了数据,DataSet也能被增加或修改其关系、列、表和类似对象,而且不需要多重的数据库连接。

最后,在recordset中,通常用循环的办法来取出数据。在DataSet中,数据视图被创建并绑定到服务器控件上,因此,可以不需要混合表示和数据存取代码就能表示数据。这是很简洁的编程方式。

总之,DataSet和recordset是完全不相同的。DataSet可以理解为是一种升级的recordset。在没有对ADO.NET的DataSet和ADO的recordset进行性能上的测试和比较时,综上所述,DataSet应该是比较有效的。


分享到:
评论

相关推荐

    基于ADO.NET的ASP.NET页面程序 (2006年)

    NET在NET中进行数据访问、数据读取的方法,以及DataSet,DataTable,and Recordset在ADO.NET中的具体实现。实例给出了一个基于ADO. NET的显示可更新数据表的ASENET页面程序,结果表明使数据库的访问更加方便,在非...

    net简答题.doc

    简单介绍下ADO.NET和ADO主要有什么改进? 答:ADO以Recordset存储,而ADO.NET则以DataSet表示,ADO.NET提供了数据集和数据适配器,有利于实现分布式处理,降低了对数据库服务器资源的消耗。 ASP.NET与ASP相比,...

    创建类型化DataSet及架构讲解

    只有ADO.NET有DataSet对象,而且类型化DataSet是检索和更新关系表的优选方法(虽然DataSet并不局限于处理关系数据)。用户通过VS 2005设计器可创建类型化DataSet。类型化DataSet通过XML架构定义,并通过大量自动生成的...

    蓝焰设计站图文管理系统

    【摘要】利用ASP.NET和ADO.NET技术开发的网站新闻管理系统,实现了网站新闻的动态管理,使得对信息的管理更加及时、高效,提高了工作效率。同时对系统的开发原理、系统的功能特点和设计方案进行了介绍。 【关键词】...

    VB.NET Developer's Guide(4574).pdf

    Differences between ADO and ADO.NET 414 XML Support 414 ADO.NET Configuration 415 Remoting in ADO.NET 415 Maintaining State 415 Using the XML Schema Definition Tool 416 Connected Layer 417 Data...

    十天学会ASP.net--我认为ASP.NET比ASP难很多,希望大家做好准备

    今天就到此结束,请继续往后面看,下次开始就要说ADO.NET了。 十天学会ASP.net(5) 作者:佚名 阅读人次:8013 文章来源:未知 发布时间:2005-6-24 网友评论(6)条 第五天 学习目的:学会连接两种数据库 对于ASP...

    《ASP.NET与数据库程序设计》

    5-3-1关于ADO.NET 5-3-2与数据库无关的DataSet DataSet的内容 DateSet的来源(自行建立) DateSet的来源(取用数据库) 控制项结合DataSet 回存至来源 5-3-3没有Recordset 5-3-4取得...

    webcontrols

     通过传统的ASP和ADO,你能够选择在哪里放置数据库游标(服务器一边或是用户一边),至于其它的,是依靠你想要创建的性能和功能类型来做决定。但是在ASP+里,你不再有选择。因为在web controls和服务器之间的链接,...

    webservicerecordset.zip_网络编程_C#_

    adonet dataset/datatable转ado的recordset类

Global site tag (gtag.js) - Google Analytics