第一范文网 - 专业文章范例文档资料分享平台

数据库访问技术

来源:用户分享 时间:2025/10/8 10:22:27 本文由loading 分享 下载这篇文档手机版
说明:文章内容仅供预览,部分内容可能不全,需要完整文档或者需要复制内容,请下载word后使用。下载word有问题请添加微信号:xxxxxxx或QQ:xxxxxx 处理(尽可能给您提供完整文档),感谢您的支持与谅解。

数据库访问技术

时间:2012/9/28 作者:郑艺玮

一、数据库访问技术分类

1.ODBC(Open Database Connectivity,开放数据库互联)

概述:ODBC是20世纪80年代末90年代初出现的技术,它为编写关系数据库的客户软件提供了一种统一的接口。ODBC提供一个单一的API,可用于处理不同数据库的客户应用程序。使用ODBC API的应用程序可以与任何具有ODBC驱动程序的关系数据库进行通信。现在,绝大多数主流关系数据库提供了ODBC驱动程序。利用ODBC API就可以访问这些数据库喽!下面的图为ODBC体系构架: ODBC驱动 程序管理器 ODBC驱 动程序 各种关系数据库

客户程序 ODBC体系构架

解释:此图为访问数据库的流程,我们所编写的客户程序直接和ODBC驱动程序管理器打交道,后者利用ODBC驱动程序所提供的API访问数据库。在访问不同数据库时,需要指定相应的ODBC驱动程序,而后者又由ODBC程序管理器去调用,它会将客户的请求转换为相应的ODBC驱动,传给数据库。

2.DAO(Data Access Object,数据访问对象)

概述:DAO就是一组Microsoft Access/Jet数据库引擎的COM自动化接口。DAO不像ODBC那样是面向C/C++程序员的,它是微软提供给Visual Basic开发人员的一种简单的数据访问方法,用于操纵Access数据库。

3.RDO(Remote Data Object,远程数据对象)

概述:由于RDO直接调用ODBC API(而不是像DAO那样通过Jet引擎),因此,可以为使用关系数据库的应用程序提供更好的性能。

4.OLE DB(对象链接与嵌入数据库)

概述:OLE DB在两个方面对ODBC进行了扩展。首先,OLE DB提供了一个数据库编程的COM接口;第二,OLE DB提供了一个可用于关系型和非关系数据源的接口,而ODBC只能访问

关系型数据库。通常我们据说的数据库都是指关系型数据库。但是数据库的概念,从广义上来说,除了关系型数据库以外,还包括其他格式的数据源,包括电子表格、文本文件。OLE DB的两个基本结构是OLE DB提供程序(Provider)和OLE DB用户程序(Consumer)。

使用ADO的客户程序 OLE DB用户程序 使用OLE DB访问数据库的程序 ADO OLE DB提供程序 ODBC ODBC 数据库 ODBC 数据库 电子表格 电子邮件 其他非关系型存储

此图:OLE DB体系结构图

解释:由上图可知,ADO和我们编写的OLE DB访问程序都属于OLE DB用户程序。如果采用ADO技术访问数据库的话,实际上调用过程是:ADO客户程序通过ADO再访问OLE DB提供程序,这样访问速度就要慢一些。但是因为ADO对自动化提供了很好的支持,所以在VBScript、VB这类语言中利用ADO访问数据库是很方便的。

OLE DB用户程序利用不同的OLE DB提供程序可以访问不同的数据源,包括关系型数据库、电子表格、电子邮件,以及其他的非关系型存储,只要这些数据源提供了相应的OLE DB提供程序。有时,数据源没有提供相应的OLE DB提供程序,我们还可以自己为这些数据源编写一个OLE DB提供程序。如果某个关系型数据库没有OLE DB的提供程序,那么可以利用访问ODBC的OLE DB提供程序去访问ODBC,然后再利用ODBC去访问支持ODBC的数据库。可见,OLE DB实现的功能是非常强大的。

5.ADO(ActiveX Data Object,ActiveX数据对象)

概述:ADO建立在OLE DB之上。ADO是一个OLE DB用户程序,即它本身也是一个Consumer。使用ADO的应用程序都要间接地使用OLE DB。ADO简化了OLE DB,提供了对自动化的支持,使得像VBScript这样的脚本语言也能够使用ADO访问数据库。

6.对以上几种技术总结

上述几种数据库访问技术中,DAO和RDO这两种技术已经很少使用了,随着时代的发展,它们将逐渐退出历史的舞台。而OLE DB和ADO这两种是比较新的技术。OLE DB的功能非常强大,但是它对自动化的支持不是很好。因此像一些自动化的脚本语言,例如VBScript就不能使用OLE DB访问数据库。为了更好地支持自动化,微软在OLE DB的基础上开发了ADO,

便于像VBScript这样的脚本语言,以及VB、Delphi这样的语言很方便地利用ADO去访问数据库。但是有一点需要注意,ADO本身是一个OLE DB的用户程序。VC++对利用OLE DB访问数据库提供了很好的支持,而且速度也比较快,我们可以利用VC++编写OLE DB用户程序。

二、ADO访问数据库

1.ADO知识点

Connection对象

Connection对象表示到数据库的连接,它管理应用程序和数据库之间的通信。下面将介绍的Recordset和Command对象都有一个ActiveConnection属性,该属性用来引用Connection对象。

Command对象

Command对象用来处理重复执行的查询,或处理需要检查在存储过程调用中的输出或返回的值的查询。

Recordset对象

Recordset对象用来获取数据。Recordset对象存放查询的结果,这此结果由数据的行(称为记录)和列(称为字段)组成。每一列都存放在Recordset的Files集合中的一个Field对象中。

2.操作步骤

大概的步骤:(开发环境为VS2005)

1.新建一个基于对话框的MFC应用程序。(一个列表框与一个按钮)

2.增加ADO控件:在菜单选项工具->选择工具箱项->COM组件->Microsoft ADO Data Control6.0(OLE DB)。

3.导入动态链接库:在程序的预编译头文件(stdafx.h)中导入该库,代码如:#import \

\。如果编译成功,会产生两个文件:msado15.tlh(头文件)和msado15.tli(源文件),其在Debug目录下? 解释:no-namespace没具体定义那个名称空间,方便访问ADO提供的Connection、Command和Recordset这三个COM接口。rename为重新命名,避免出现冲突。 4.将ADO控件拖放到窗口,右键打开属性->单击右上角的属性页小图标->选中单选按钮Use Connection String在其Build..按钮单击->在提供程序里选择Microsoft OLE DB Provider for SQL Server单击“下一步”->在“选择或输入服务器名称”单击下拉框,“输入登录服务器的信息”选择使用WindowNT集成安全设置->最后参数配置完成单击“测试连接”按钮。(此步骤只为得到一个连接字符串(ConnectionString),并无实际的应用)

搜索更多关于: 数据库访问技术 的文档
数据库访问技术.doc 将本文的Word文档下载到电脑,方便复制、编辑、收藏和打印
本文链接:https://www.diyifanwen.net/c2wlt41h9wj0fluh9bb15_1.html(转载请注明文章来源)
热门推荐
Copyright © 2012-2023 第一范文网 版权所有 免责声明 | 联系我们
声明 :本网站尊重并保护知识产权,根据《信息网络传播权保护条例》,如果我们转载的作品侵犯了您的权利,请在一个月内通知我们,我们会及时删除。
客服QQ:xxxxxx 邮箱:xxxxxx@qq.com
渝ICP备2023013149号
Top