APP下载

ADO.Net数据访问技术分析

2011-10-26河南省科学技术信息研究院

河南科技 2011年11期
关键词:数据源名称内存

河南省科学技术信息研究院 高 俊

ADO.Net数据访问技术分析

河南省科学技术信息研究院 高 俊

一、ODBC、OLE DB和ADO简介

1.ODBC。最初,各个数据库软件开发商为自己的数据库设计不同的数据库管理系统(DBMS),不同类型数据库之间的数据交换是一件非常麻烦的事情。为了解决这一问题,微软提出了ODBC,即 开 放 式 数 据 库 连 接 技 术(Open DataBase Connectivity),它试图建立一种统一的应用程序数据库访问接口,通过它开发人员无需了解数据库内部的结构就可以实现对数据库的访问。ODBC开创了数据访问技术的一个里程碑,各数据库厂商纷纷推出为自己数据库系统设计的ODBC驱动程序。

2.OLE DB。随着计算机技术的迅猛发展,ODBC在面对新的数据驱动程序的设计和构造方法时遇到了不少困难,OLE DB(Object Linkingand Embedding DataBase,对象连接和嵌入数据库)技术便应运而生了。从某种程度上来说,OLE DB是ODBC发展的一个产物。OLE DB在设计上采用了多层模型,对数据的物理结构依赖更少,理论上说,任何一种能为OLE DB提供者所识别的语言都可以使用且不必严格基于SQL(Structured Query Language,结构化查询语言)的标准。

3.ADO。ADO对OLE DB做了进一步的封装。从整体上来看,ADO模型以数据库为中心,具有更多的层次模型和更丰富的编程接口,它大致相当于OLE DB的自动化版本,虽然在效率上稍有逊色,但其追求的是简单、友好的应用。通过ADO,不仅可以直接访问基于SQL Server的数据库,还可以访问所有支持ODBC的数据库。

二、基于ADO.NET的数据访问技术

ADO.NET是ADO最新发展的产物,具有更广泛的通用性。ADO.NET技术的出现,开辟了数据访问技术的新纪元。ADO. NET是VS.NET的重要组成部分,是新一代的数据存取技术。在ADO.NET中,通过Managed Provider所提供的应用程序编程接口(API),便可轻松地访问各种数据源的数据,包括OLE DB和ODBC所支持的数据库。图1描述了有关数据访问与链接标准的各种数据模型的逻辑关系。

1.关于Managed Provider和DataSet。

(1)Managed Provider。Managed Provider是ADO.NET中的一个核心内容,它描述链接的类型并协调应用程序和DataSet对象与数据库之间的通信。正是因为Managed Provider提供了DataSet和数据中心(就是数据库)之间的联系,包含了对数据中心存取的一系列应用程序编程接口(API),才使得编写应用程序的程序员在实现访问各种数据源的数据时,只需通过Managed Provider所提供的应用程序编程接口(API),而无需了解其内部的实现细节。

(2)DataSet。DataSet是ADO.NET的中心概念,所有ADO. NET对象的基本原理和根源都是DataSet对象模型。在DataSet的内部是用XML来描述的,借助XML可以描述具有复杂关系的数据,比如最常见的父子关系等。DataSet具有的一个明显的技术优势,就是能够容纳复杂关系的数据。DataSet不依赖于数据源(如数据库)而独立存在于内存中,是一个离散的数据对象,可以把DataSet想象成内存中的数据库,也就是把它理解为一个简单、独立和存在于内存中的数据库视图。一个DataSet可以包含任意数目的表,每个表一般对应于一个数据库表或视图。

2.通过ADO.NET访问数据库。

(1)导入名称空间。ADO.NET提供2种托管提供程序用于访问不同的数据源,它们分别拥有不同的名称空间定义。如果想要访问数据库,就需要将这些名称空间导入到相应的应用程序中。

(2)连接数据库。无论使用何种方式对数据库进行数据操作,很重要的一步就是要建立与数据库的链接。建立一个链接,则需要创建一个SQLConnection类对象。SQLConnection类对象包含在名称空间System.Data.SqlClient中。

(3)执行有关SQL查询语句操作。创建好链接后,需要一种机制实现对数据库进行操作,实际上就是对数据库执行相关的SQL语句。为完成这一任务,需要创建一个SQLCommand类对象。SQLCommand类对象包含在名称空间System.Data.SqlClient中。

本文,笔者简单分析ADO.NET的一些概念和应用,数据库访问是程序中应用最普遍的部分。在成功链接数据库之后,就可以直接编写代码了,也可进行数据处理、读取、插入、更新数据及删除数据等操作。

猜你喜欢

数据源名称内存
“春夏秋冬”的内存
Web 大数据系统数据源选择*
基于不同网络数据源的期刊评价研究
沪港通一周成交概况
沪港通一周成交概况
沪港通一周成交概况
沪港通一周成交概况
内存搭配DDR4、DDR3L还是DDR3?
基于真值发现的冲突数据源质量评价算法
基于内存的地理信息访问技术