ADO和DAO的区别

ADO(ACTIVEX DATA OBJECTS)应用层的数据访问接口
ODBC 数据库驱动接口
OLE DB 系统级数据访问接口
DAO (DATA ACCESS OBJECTS) 对象的数据访问接口
ADO是基于全新的OLE DB技术而设计的.是一种基于应用程序层的数据访问接口.它是DAO/RDO的后继产物.
DAO是VB最先采用的面向对象的数据访问接口,通过DAO访问MICROSOFT JET数据库引擎.
ADODC是封装ADO的VB数据控件,可减少代码编写.
ADODB是数据对象,操作数据库需通过编写代码 来实现.

ADO:Active数据对象(ActiveDataObjects):ADO实际是一种提供访问各种数据类型的连接机制。ADO设计为一种极简单的格式,通过ODBC的方法同数据库接口。可以使用任何一种ODBC数据源,即不止适合于SQLServer、Oracle、Access等数据库应用程序,也适合于Excel表格、文本文件、图形文件和无格式的数据文件。ADO是基于OLE-DB之上的技术,因此ADO通过其内部的属性和方法提供统一的数据访问接口方法。
  DAO数据访问对象(DataAccessObjects):是一种面向对象的界面接口。通过DAO/Jet功能可以访问ISAM数据库,使用DAO/ODBCDirect功能可以实现远程RDO功能。使用DAO的程序编码非常简单,DAO提供丰富的游标(Cursor)型的结果集和非游标(Cursor-Less)类型的结果集,同DDL(数据描述语言)的功能很类似。
现在vb数据库编程大都使用ADO,很少人还用DAO.

DAO是集合,对象,方法和属性;它用对象集合来处理数据库,表,视图和索引等。使用DAO编程,可以访问并操作数据库,管理数据库的对象和定义数据库的结构等。

ADO是类似于DAO和RDO的面向对象的数据库访问技术。DAO是第一个面向对象的接口,它显露了microsoft Jet数据库引擎,并允许VB开发者通过ODBC直接连接到其他数据库一样,直接连接到access表。DAO适合单系统应用程序或小范围本地分布使用。

ADO是DAO/RDO的后继产品,它扩展了DAO和RDO所使用的对象模型,这以为着它包含较少的对象,更多的属性,方法(和参数),以及事件。ADO当前并不支持DAO的所有功能,它主要包括RDO风格的功能性,以便和OLE DB数据源交互,另外还包括远程和DHTML技术。

ADO和DAO的最大区别是ADO使用OLEDB接口而非ODBC作为底层数据供应者的。依靠OLEDB,ADO也能够支持对非SQL数据存储的纪录集访问,如Email和网络目录服务。OLEDB提供了比ODBC更多的灵活性和易用性。OLEDB服务的内部设计使得它能存取标准SQL类型的数据那样容易的访问非SQL数据存储。OLEDB的一个关键特性是它可以提供对描述性数据存储的处理。通过提供某种方法来描述数据存储方式,OLEDB可以对以任何格式存储的数据和以任何方法执行的查询提供访问途径。由于OLEDB并不要求所有数据存储都以表格、行和列的形式出现。所以与ODBC相比,它适用于更多的数据存储类型。  

原文地址:https://www.cnblogs.com/liangxiaofeng/p/4917538.html