基于C#应用的ADO.NET数据库访问技术
2020-08-12
来源:爱问旅游网
第3O卷第4期 2014年4月 吉林工程技术师范学院学报 Journal of Jilin Teachers Institute of Engineering and Technology V0lI 30 No.4 Apr.2014 基于C#应用的ADO.NET数据库访问技术 孙美卫 (泉州经贸职业技术学院信息技术系,福建泉州362000) [摘要]笔者在开发并研究基于c#应用的机场指挥系统中,面对大量、复杂数据库,如何利用ADO. NET数据库访问技术提高其访问效率是个重要技术难点。通过分析ADO.NET数据库访问技术的应 用,促使c#a用能突破自身瓶颈,优化性能。 【关键词】ADO.NET;数据库;C# [中图分类号]TP311.5 [文献标识码]A [文章编号]1009-9042(2014)04-0085-03 ADO.NET Database Access Technology Based on the Application of C# SUN Mei—wei (Department ofInformation Technology,Quanzhou Vocationa College ofEconomics and Trade,Quanzhou Fujian 362000,China) Abstract:In the development and research of airport command systems based on the applica- tion of C#,in the face of a large number and complex databases,it is an important technologi- cal diiculfty how to make use of ADO.NET database access technology to improve the access efficiency.Through the analysis of application of ADO.NET database access technology,it can make C#application break the bottleneck of itself and optimize performance. Key WOrds:AD0.NET;database;C# 版本,他主要的作用是将数据库与数据之间的建立 对对方的数据存取提供了一个平台,也是日 站调系统、气象系统等存在许多相关数据,为了避免 起连接,重复劳动,不断调试与实践,促使其能实现与站调系 前数据库中最常用的应用程序接口,也是最主要的。 统、气象系统交互,构建其桥梁作用。利用Microsoft ADO.NET其中有两个核心组件:D ataSet数据集以 利用这些数据库可以进行数 Visual Studio 2005开发工具,采用C#编程语言,结合 及.NET数据提供程序, SQL Server 2005设计出了符合实际需求的机场指挥 据的分解访问。1.1 DataSet对象 系统,充分突显ADO.NET数据库访问技术的优势。 将ADO.NET进行断开以及分布的主要程序是 1 ADO.NET DataSet,设计它的主要目的是实现独立于所有数据 c#是一种完全更新以往程序语言的NET平台 源的数据的访问,将内在中临时储存的数据进行各 aSet是一个数据存储的一个数 的设计,采用c#不仅可以进行WEB程序的编写又 种处理以及取回。Dat通过D ataA dapter对象与数据库做数据交换。 可以进行Windows的程序运用,不管在任何模块下, 据库,在进行开发的程序中进行数据库的访问不仅最重要 也可以实现各个小数据的交换,在XM数据中也可 而且还是最常用的部分,NET框架提供了ADO.NET 以应用,也在本地数据的管理中也可以应用。其中 (ActiveX DataO b,xcts.N E T)进行数据库的访问,也 包括了许多个DataT ab le集合在一起,DataTab le 是微软在.NETFram ew ork中建立的分布式以及各 相同于内存数据表,其中包括了数据行的集介 olum ns}D ataSet通常用来在 类数据共享应用程序的编程接U,是将ADO等级的 Rows、数据列的集介C 经过深入调研,发现所研发的机场指挥系统与 收稿日期:2014-02—10 作者简介:孙美卫(1975.),女,福建泉州人,泉州经贸职业技术学院信息技术系讲师,硕士,主要从事软件工程,c#应用开发、数据库技术。 ・86・ 吉林工程技术师范学院学报 2014年4月 应用程序与数据库服务器断开连接后保存取得的数 据,不在线时,DataSet对于数据的各种删减,以及修 改,以及修改和新增都可以实现独自完成,但是受限 于与数据库正常联机工作时才可以进行数据维护工 作,这样可以有效地避免客户端和数据库服务器联 机时,而客户端小对服务器做任何操作,却一自占用 数据库服务器资源,这种处理方式提高了数据库的 延展性。 1.2通过NET数据提供程序访问数据源 NET数据为了实现对数据库的连接、或者数据 查询的结果、执行命令等任务,为C#应用程序提供 访问数据源的接口。在C#中ADO.NET通过.NET 数据提供程序来访问数据源。其访问方式如图1 所示。 由图1可知,ADO.NET通过4个.NET数据提 供程序来访问数据源。 图1 ADO.NET通过NET数据提供程序访问数据源 2 ADO.NET访问数据库的模式 OLEDB模式、ODBC模式和SQLCLIENT模式是 Wind平台ADO.NET的3种访问数据库的模式,这 种访问可以使用专有的Oracle模式。 2.1 OLEDB模式 问,实验结证明了在访问MS SQL Server时,SQLCli- ent模式效率相对OLEDB和DBC模式更高,所以最 好使用SQLClient模式对MS SQL Server数据库进行 开发应用程序。 3体系结构 根据国内外的开发情况来,目前采用体系结构 主要有C/S模式和B/S模式。但从机场本身的安全 特性进行考虑,所以决定了机场指挥系统是基于局 域网的C/S模式。 C/S模式,其实就是客户端/服务器(Client/ Server)架构,是一种传统的两层架构,其客户端(cli— ent)可以包含一个或多个在用户电脑上运行的应用 程序,而服务器(Server)有两种方式,一种是Socket 服务端,服务器端的程序通过Socket与客户端的程 序通信;另一种则是数据库服务端,客户端通过数据 库连接访问服务端的数据。由于传统二层C/S结构 是采用单一服务器并且以局域网为中心,由于客户 端程序能直接访问数据库服务器,那么,其他在客户 端计算机上的应用程序也会想办法访问数据库服务 器,从而会威胁数据库的安全性。所以现在基本上 采用比较广泛的是三层C/S模式。 进行OLEDB数据库的访问的OLEDB模式是 Microsoft公司进行开发以及研制的一种高性能的、 基于COM的数据库访问技术,OLEDB和其他 1Vficrosoft公司数据库技术提供的访问方式是不一 样。OLEDB数据提供程序的访问是通过OLED— BConnection对象连接和Microsoft SQL Server的连 接,从而为使用OLEDB提供公开的数据源。 2.2 ODBC模式 在Win—down平台中通常下的数据访问都可以 进行ODBC数据访问。同时,期数据相互之间的调 用又可以通过系统DSN的建立来实现。 2.3 SQLClient模式 MS SQL Server数据库的访问是通过SQLClient 进行访问的,是ADO.NET中处于一种特殊模式。当 然,是OLEDB和ODBC所支持MS SQL Server的,MS SQLServer可以利用OLEDB和ODBC模式进行访 第3O卷 第4期 孙美卫:基于C#应用的ADO.NET数据库访问技术 .87. 三层C/S模式主要由数据层、表示层、功能层三 个部分组成。其中,数据层就是数据库管理系统,负 责管理对数据库数据的读写;表示层则是应用程序 的用户接口部分,承担着用户与应用程序间的交互 对话功能;而功能层则是将在程序中编人具体的业 务处理逻辑,处理时可以从表示层或数据层取得所 需的数据。 4 ADO.NET数据库访问技术 SQL Server 2005是微软旗下的数据库产品,是 在SQL Server 2000进行升级的,功能和特性上都有 很大的改进。特别是ADO.NET。其ADO.NET性能 提升,版本升级到2.0。SQL Server 200中的ADO. NET可以支持从对SQL类的新的支持,到多活动结 果集(MARS)的支持,这就推动了数据集的存取和操 纵,实现更大的可升级性和灵活性。 ADO.NET是一组用于和数据源进行交互的面 向对象类库。并提供了平台互用性和可伸缩的访 问。ADO.NET提供与数据源进行交互的相关的公 共方法,能针对不同数据源采用的不同格式来调用 ADO.NET的类库进行连接。 5 总结 ADO.NET是当前数据库中的重要技术,特别是 在c#应用开发实例中。使用其存储过程的优点主 要是: 减少网络通信量。存储过程只存在数据库中, 使用时只需传递参数就行,而如果直接SQL语句来 完成相应的语句,就需传递很长的SQL语句,这样在 网络中传递的字符串就比较多。 加快运行速度。当你创建了存储过程,无一例 外就可将它保存在内存中,将来使用时可以直接使 用存储过程。 减少工作量。存储过程可以进行重复的使用, 从而减少开发人员的一些工作量。 能进行复杂操作。当对数据库进行复杂操作时 (如对多个表进行Update,Insert,Query,Delete),可 将此复杂操作与数据库提供的事务处理结合并用存 储过程封装起来,这样就把sql语句和程序很好的分 离开来,减少维护难道。 可见,发挥ADO.NET数据库访问技术的重要优 势,能够突破自身瓶颈。 参考文献: [1]李海泉,李刚.系统可靠性分析与设计[M].北京.科学 出版社.2003. [2]孙艳玲.民航空中管制通信系统可靠性的研究[D].济 南:山东大学,2007. [3]李继武.Visual C#.NET项目开发实战从入门到精通 [M].北京:清华大学出版社,2007. [4]常晋义.信息系统开发与管理[M].北京:机械工业出版 社,2004. [5]求是科技,ASP.NET信息管理系统开发实例导航[M]. 北京:人民邮电出版社,2005. [6](英)迪尤逊著,董明等译SQL Server 2005基础教程 [M].北京:人民邮电出版社,2006. [7]萨师煊,数据库系统概论(第三版)[M].北京:高等教育 出版社,2001. [责任编辑战锐]