- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于ADO.NET数据源连接模式研究.doc
基于ADO.NET数据源连接模式研究
【摘 要】本文简要说明了ADO.NET的数据库访问机制,分析ADO.NET访问数据库的两种连接方式(连接模式和非连接模式)的特点,并用ASP. NET/ C#语言编程分别实现两种连接方式对SQL Server数据库的访问,最后总结这两种数据源连接方式在实际应用中的特点。
【关键词】ADO.NET;连接模式;非连接模式;数据源
一、引言
ADO.NET的前身是ADO(ActiveX Data Objects),它使用一种全新的设计理念,在ADO的基础上引入了更先进的思想,实现了跨时代的改进。ADO.NET为用户提供了一种全新的数据库访问机制,它使得数据库编程变得相当容易[1],并且实现了更高效的访问。由于ADO.NET利用的是XML技术,传送的数据都是XML格式的。通过ADO.NET不仅能够访问SQL Server、Access等关系型数据库中的数据,同时也可以访问层次化的XML数据源,所以它比以前的ADO 更灵活更有弹性。ADO.NET的出现并不是为了取代ADO,而是要提供更有效率的数据访问和操作。
ADO.NET是一组用于和数据源进行交互的面向对象类库。通常情况下,数据源是数据库,但它同样也能够是文本文件、Excel表格或者XML文件[2]。它是.NET Framework访问数据库的重要组成部分,利用统一和一致的数据库接口方便用户建立Windows和Web应用数据库程序。ADO.NET体系结构使得开发人员不必考虑数据的位置,通过传统的连接模式或非连接模式对数据库进行操作。
二、两种数据库连接模式
随着Web应用程序功能的不断增加,大大改变了许多应用程序的设计方式,传统的数据库连接方式无法适用于此类应用程序,ADO.NET被设计成对于数据处理不一直保持联机的架构,应用程序只有在要取得数据或是更新数据的时候才对数据源进行联机的工作。
传统的数据库访问模式,需要始终与数据库保持连接,直到获取到用户需要的数据后才会断开数据库连接,这种数据库访问方式称之为连接模式(Connected)。连接模式主要通过Connection、Command、DataReader、DataAdapter这4个类实现对数据库的访问,它们统称为.NET数据提供程序。
相对于传统的连接模式ADO.NET还提供了全新的非连接模式(Disconnected)。在此模式下,Windows或Web应用程序从各种数据源中获得需要的数据后,将其以XML的形式保存在内存中,并断开与数据源的链接。ADO.NET非连接模式就是通过DataSet(数据集)类,以XML形式保存数据,并通过DataAdapter(数据适配器)对象建立与数据源的桥梁,使DataSet中的数据与数据源保持一致。在ADO.NET中,DataSet占据着重要的地位,可以把它看成是内存中的数据库,是专门用来处理从数据库中读取的数据[3]。即在内存中建立了数据源的副本,所有的数据操作都是对此副本进行的,直到更新时才重新链接数据库完成更新操作,实现了独立于数据源的数据访问。
(4)完成数据操作后,使用Connection对象的Close方法断开与数据源的连接。
使用SqlCommandBuilder与SqlDataAdapter结合使用,可以方便地去数据库进行更新。但是如果不添加SqlCommandBuilder cb = new SqlCommandBuilder(Cmd)语句,会出现如下错误提示:“当传递具有已修改行的DataRow集合时,更新要求有效的UpdateCommand”。For语句实现将数据表所有记录中“t2”字段的内容更新为“ds”,并通过DataAdapter对象的Update方法将更新内容保存到数据库中。
(7)完成数据更新操作后,使用Connection对象的Close方法断开与数据源的连接。
conn.Close();
以上就是非连接模式下数据源访问的步骤,应用程序从数据源获取数据后,断开与数据源的连接,所有的数据操作都是针对本地数据缓存里的数据,当需要从数据源获取新数据或者被处理后的数据回传,这时应用程序再与数据源相连接来完成相应的操作。这样可以保证应用程序从服务器端读出副本后马上断开与服务器数据库的连接。这样当有很多用户访问时,效率能够得到保证。
3.两种连接模式访问数据库测试
在VS2008环境下,利用C#编写了两种连接模式访问SQL Server数据库的实例,用于访问Test数据库中“TestUser”数据表,此表共有5个字段10000条记录。两种模式打开网页的情况如表1所示。
以上测试结果是在本地环境下进行的,通过上表可以看出网页打开速度
您可能关注的文档
最近下载
- 2025高考英语复习 读后续写阅卷流程、评分标准及备考策略 课件.pptx
- 四川省成都市武侯区成都市棕北中学2024-2025学年九年级上学期11月期中英语试题(含答案,无听力音频及原文).pdf VIP
- 网络安全与信息技术基础知识点试卷及答案汇总.docx
- 徐宁金枪手人物介绍水浒传.pptx VIP
- PDCA循环在护理质量提升中的应用.pptx VIP
- DB37T1914—2024 《液氨存储与装卸作业安全技术规范》.pdf
- 学校食堂食品安全投诉处理制度.docx VIP
- 2025年人教版三年级上册道德与法治全册知识点.pdf
- 保安服务操作规程及质量控制.docx VIP
- 水草清理装置水下机构的设计.doc VIP
文档评论(0)