08_《基于ADO.NET技术访问SQL Server数据库的编程实现》
一、基本信息
标题:基于ADO.NET技术访问SQL Server数据库的编程实现
发表时间:2014-04-15
作者:江凌 杨平利 杨梅 袁媛
来源:西北核技术研究所
关键词:ADO.NET;数据库访问;SQL Server;数据库管理;
文献来源:基于ADO.NET技术访问SQL Server数据库的编程实现
二、研究内容
ADO.NET的核心组件与体系结构,以及其访问数据库的两种不同方式、访问基本过程等。
1.引言
数据库技术是计算机科学技术中发展最快的领域之一, 也是应用最广泛的技术之一, 它已成为计算机信息系统与 应用系统的核心技术和重要基础。目前, 数据库系统已经广泛应用于各个领域, 例如管理信息系统、办公自动化系 统、图书情报检索系统等。数据库系统的特点主要有以下几个方面 :
(1) 数据结构化。数据的共享性高, 冗余度低, 易扩充;
(2) 数据独立性高。 数据由数据库管理系统 (DBMS) 统一管理和控制。
随着应用程序的发展演变, 越来越多的应用程序需要通过网络传递数据。Microsoft结合.NET框架为数据访问提 供全新的编程模型——ADO.NET。通过ADO.NET不仅能够使应用程序链接到数据源, 检索、操纵和更新数据, 而且 能够实现对非关系数据库的访问。
本文主要介绍在Visual C#.NET中如何利用ADO.NET进行数据访问, 在数据库的选 用上, 采用了微软公司的SQL Server 2005。
2.体系结构
与传统的访问Web数据库的方法相比较, ADO.NET数据访问技术具有2 个突出的优点:一是紧密集成XML作为数 据传输标准, 使得ADO.NET能够更加灵活地访问各种不同类型的数据;二是采用中断式访问模式, 应用程序只是在需要 访问或者更新数据时才会链接到数据库, 一旦完成后就立即断开, 完成此任务的就是ADO.NET的2 个核心组件。
核心组件:.NET Framework数据提供程序和Data Set 。
.NET Framework数据提供程序用于链接数据源、执行SQL命令以及检索数据, 检索到的数据既可以直接处理, 也 可以放入Data Set对象中。.NET Framework数据提供程序通过在Data Adapter对象和Data Set之间建立联系, 使Da ta Set对象可以获取来自多个数据源的数据。数据集Data Set是一个与数据源无关的内存数据表示方法, 用于高速缓 存关系型数据。它像是一个简化的关系数据库, 可以包含数据表、数据列和数据行, 以及表与表之间的关系, 并且完全 是在脱机模式下进行操作。
2.1 .NET Framework数据提供程序
.NET Framework数据提供程序包括Connection对象、Command对象、Data Reader对象和Data Adapter对 象。
(1) Connection对象:Connection管理与SQL Server数据库的链接, 用于链接Microsoft SQL Server 7.0 版或以 上版本。Connection对象是通过Connection String属性的设置来链接数据库。
(2) Command对象:在ADO.NET中, 一般使用Com-mand对象来执行SQL命令并从数据源中返回结果。
(3) Data Reader对象:用于从数据源中获取只读的、单项的数据流。
(4) Data Adapter对象:是Data Set和数据源之间的桥梁, 它可以隐藏和Connection对象、Command对象沟通的 细节, 完成Data Set和数据源之间的数据交换。
2.1 Data Set组件
(1) Data Set包含Tables (表) 集合和Relations (关系) 集合。Tables集合由Data Table对象组成, 而Rela-tions集 合由Data Relation对象组成。
(2) 在Data Set的Tables集合中, 每个Data Table对象又包含Rows (行) 集合、Columns (列集合) 集合、Chil-d Relations (子关系) 集合和Parent Relations (父关系) 集合。
因为Data Set的结构和关系型数据库类似, 所以可以像访问关系型数据库那样访问Data Set。可以在Data-Set内 添加、删除表, 在表中使用Select方法查看数据、使用Delete方法删除数据等。
同时, Data Set可以看作由集合组成, 因此还可以以集合的方法访问Data Set中的数据。另外, Data Set还能够完全看作XML格式的数据, 对Data Set可以 按照XML数据的形式进行访问。
3.3 两种访问形式
3.3.1 基于链接的访问模式
基于链接的访问模式会占用一个数据库链接, 然后读取数据。 它是通过Data Reader对象来实现的, Da-ta Read er对象在已经建立的数据链接的基础上, 提供对数据源的单向的、只读的数据流。由于Data Reader可以顺序地处理 从数据源返回的结果, 而且不在内存中缓存, 因此Data Reader适合从数据源中检索大量的、不需要进行更新操作的数 据。
3.3.2 非链接的访问模式
非链接的访问模式是以Dataset为中心的数据访问模式。Dataset中的数据是与数据库断开链接的 。一旦将结 果存储在Dataset之后, Dataset和数据库之间便不再有链接。对Dataset内容所做的修改不会直接影响到数据库。它 的优点就在于处理非链接数据时是不需要始终与数据库链接。
三、阅读结论
ADO.NET是一组.NET操作访问数据库的数据库访问形式,不论是Command、Reader、Adapter操作DataSet,它们都能对不同数据库采用相同的访问形式。
极大便利了.NET程序员。推出虽久但已久经考验。
四、参考文献
[1]萨师煊, 王珊.数据库系统概论[M].北京:高等教育出版社, 2002.
[2]申朝阳, 宋颜浩.ASP.NET与数据库技术高级指南[M].北京:中国水利水电出版社, 2005.
[3]张奇, 李律松, 卫建伟, 等.Visual C#数据库项目案例导航[M].北京:清华大学出版社, 2005.
[4]路红武.基于.NET企业信息资源管理系统的设计与实现[J].计算机与现代化, 2005, 18 (6) :21-23.
[5]李律松, 陈少刚, 沈刚, 等.Visual C#数据库高级教程[M].北京:清华大学出版社, 2005.
[6]周晓娟.基于ADO.NET的数据库访问技术研究[J].现代商贸工业, 2009 (24) :293-295.
[7]SCEPPA David.ADO.NET2.0技术内幕[M].北京:清华大学出版社, 2007.
[8]ROBINSON Simon, NAGEL Christian.C#高级编程[M].李敏波, 译.3版.北京:清华大学出版社, 2005.
[9]李成楠, 杨晶.基于ADO.NET数据库访问技术浅析[J].科技创新导报, 2012 (12) :33-35.
[10]桑国珍.数据库访问技术的研究[J].现代电子技术, 2010, 33 (20) :83-85.