odbc, ado, rdo, oledb,

昨天写了个天缘网址管理小工具FavorMan,用到了ACCESS数据库,自然就会涉及到数据库的访问问题,现在再提ADO、DAO、ODBC等几乎没什么新鲜感了,不过还是记录一下留个档,这次先整理一下这几种常用数据库接口或规范之间的区别与联系,方便参考。

演进路标(从早到晚):ODBC——OLE DB——DAO——RDO——ADO;

OSI模型层次看(非绝对,部分有交叉):最底层数据源——ODBC——OLE DB——RDO、DAO、ADO——应用程序。

一、ODBC

ODBC全称Open Database Connectivity,ODBC建立一组规范(标准),并提供一组对数据库访问的标准API函数接口。ODBC包括ODBC管理器、ODBC API、ODBC驱动管理器、ODBC数据库驱动管理器四个部分。ODBC可以访问应用程序用户具有其ODBC驱动程序的任何本地或远程数据源,一般是以SQL Server、Oracle等关系数据库作为访问对象。如果使用的是基于Microsoft Jet(.mdb)的数据库,使用下面的ADO比Microsoft Access ODBC驱动程序更有效。

二、OLEDB

OLE DB是基于COM技术的一组接口规范,是系统级数据访问接口,OLE DB提供通用数据访问的方式,不管数据是以何种形式存储,可以对电子邮件、文本文件、复合文件、数据表等各种各样的数据通过统一的接口进行存取的一种技术。用来访问各种数据源,如ORACLE、SQL Server、Access、Excel等等。而且相比下文的ADO通用数据访问方 式,OLE DB性能要更强一点。

三、DAO

DAO全称DATA ACCESS OBJECTS,是基于MICROSOFT的JET 技术设计,面向对象的数据访问接口,最早在VB中使用,DAO可以访问的数据库有:

1、用数据库引擎版本为 1.x、2.x 和 3.0 的 Microsoft Access 或 Microsoft Visual Basic 创建的、使用 Microsoft Jet 数据库引擎的数据库。

2、可安装的ISAM 数据库,包括:dBASE III、dBASE IV、dBASE 5.0、Paradox 3.x、4.x 和 5.x 版。

3、开放式数据库连接(ODBC)数据库,包括但不仅限于Microsoft SQL Server、SYBASE SQL Server 和 ORACLE Server。若要访问ODBC数据库,必须具有希望访问的数据库的适当ODBC驱动程序。

4、Microsoft Excel 3.0、4.0、5.0 和 7.0 版工作表。

5、Lotus WKS、WK1、WK3 和 WK4 电子表格。

6、文本文件。

四、RDO

RDO全称Remote Data Objects,翻译就是远程数据对象访问,以ODBC为基础,依赖ODBC API、选定的ODBC 驱动程序以及后端数据库引擎实现大部分的智能和功能,RDO具备基本的ODBC处理方法,所以可以直接执行大多数ODBC API函数。RDO是从DAO派生的,同DAO最大的不同在于其数据库处理模式。DAO是针对Records和Fields,而RDO是按照Rows和Columns来处理。也就是说DAO是ISAM模式,RDO是关系模式。此外DAO是访问Access的Jet引擎 (Jet是ISAM)的接口,而RDO则是访问ODBC的接口。可见,RDO是综合了DAO/Jet、ODBC等优点。

五、ADO

ADO(ACTIVEX DATA OBJECTS)——ADO是基于OLE DB(ActiveX技术)技术设计的应用层数据访问接口,对OLE DB接口进行封装,所以使用中仍然是通过OLE DB桥接数据库。所以,ADO同OEL DB一样提供了通用数据访问功能,支持关系数据库和非关系数据库的访问。ADO功能上对DAO和RDO进行了综合演绎,就是说有合并也有取消优化等等。

 

综 合:

所以从实用角度,ADO最好,因为它的层次也是最高,下一篇将会介绍VC++中使用ADO访问ACCESS的三部曲,别走开,广告之后更加精彩。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值