ADO,OLEDB,ODBC,DAO,RDO的区别说明
程序员文章站
2022-05-01 20:15:39
一 odbc(open database connectivity,开放数据库互连)是微软公司开放服务结构(wosa,windows open services archi...
一 odbc(open database connectivity,开放数据库互连)是微软公司开放服务结构(wosa,windows open services architecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准api(应用程序编程接口)。这些api利用sql来完成其大部分任务。odbc本身也提供了对sql语言的支持,用户可以直接将sql语句送给odbc。
二 dao:数据访问对象是用来显露了microsoft jet数据库引擎(最早是给microsoftaccess 所使用,现在已经支持其它数据库),并允许开发者通过odbc直接连接到其他数据库一样,直接连接到 access 表。dao 最适用于单系统应用程序或在小范围本地分布使用。其内部已经对jet数据库的访问进行了加速优化,而且其使用起来也是很方便的。所以如果数据库是access数据库且是本地使用的话,建议使用这种访问方式。
三 rdo(remote data objects)远程数据对象是一个到odbc的、面向对象的数据访问接口,它同易于使用的dao style组合在一起,提供了一个接口,形式上展示出所有odbc的底层功能和灵活性。尽管rdo在很好地访问jet或isam数据库方面受到限制,而且它只能通过现存的odbc驱动程序来访问关系数据库。但是,rdo已被证明是许多sql server、oracle 以及其他大型关系数据库开发者经常选用的最佳接口。rdo提供了用来访问存储过程和复杂结果集的更多和更复杂的对象、属性,以及方法。
四 ole db 是 microsoft 的一个战略性系统级编程接口,用于管理整个组织内的数据。ole db 是建立在 odbc 功能之上的一个开放规范。odbc 是为访问关系型数据库而专门开发的,ole db 则用于访问关系型和非关系型信息源,例如主机 isam/vsam 和层次数据库,电子邮件和文件系统存储,文本、图形和地理数据以及自定义业务对象。ole db 定义了一组 com 接口,对各种数据库管理系统服务进行封装,并允许创建软件组件,实现这些服务。ole db 组件包括数据提供程序(包含和表现数据)、数据使用者(使用数据)和服务组件(处理和传送数据,例如,查询处理器和游标引擎)。ole db 接口有助于平滑地集成组件,这样,ole db 组件厂商就可以快速地向市场提供高质量 ole db 组件。此外,ole db 包含了一个连接 odbc 的“桥梁”,对现用的各种 odbc 关系型数据库驱动程序提供一贯的支持。
五 ado(activexdata object)是dao/rdo的后继产物。ado2.0在功能上与rdo更相似,而且一般来说,在这两种模型之间有一种相似的映射关系。ado"扩展"了dao和rdo 所使用的对象模型,这意味着它包含较少的对象、更多的属性、方法(和参数),以及事件。 作为最新的数据库访问模式,ado的使用也是简单易用,所以微软已经明确表示今后把重点放在ado上,对dao/rdo不再作升级,所以ado已经成为了当前数据库开发的主流。ado涉及的数据存储有dsn(数据源名称)、odbc(开放式数据连接)以及oledb三种方式
二 dao:数据访问对象是用来显露了microsoft jet数据库引擎(最早是给microsoftaccess 所使用,现在已经支持其它数据库),并允许开发者通过odbc直接连接到其他数据库一样,直接连接到 access 表。dao 最适用于单系统应用程序或在小范围本地分布使用。其内部已经对jet数据库的访问进行了加速优化,而且其使用起来也是很方便的。所以如果数据库是access数据库且是本地使用的话,建议使用这种访问方式。
三 rdo(remote data objects)远程数据对象是一个到odbc的、面向对象的数据访问接口,它同易于使用的dao style组合在一起,提供了一个接口,形式上展示出所有odbc的底层功能和灵活性。尽管rdo在很好地访问jet或isam数据库方面受到限制,而且它只能通过现存的odbc驱动程序来访问关系数据库。但是,rdo已被证明是许多sql server、oracle 以及其他大型关系数据库开发者经常选用的最佳接口。rdo提供了用来访问存储过程和复杂结果集的更多和更复杂的对象、属性,以及方法。
四 ole db 是 microsoft 的一个战略性系统级编程接口,用于管理整个组织内的数据。ole db 是建立在 odbc 功能之上的一个开放规范。odbc 是为访问关系型数据库而专门开发的,ole db 则用于访问关系型和非关系型信息源,例如主机 isam/vsam 和层次数据库,电子邮件和文件系统存储,文本、图形和地理数据以及自定义业务对象。ole db 定义了一组 com 接口,对各种数据库管理系统服务进行封装,并允许创建软件组件,实现这些服务。ole db 组件包括数据提供程序(包含和表现数据)、数据使用者(使用数据)和服务组件(处理和传送数据,例如,查询处理器和游标引擎)。ole db 接口有助于平滑地集成组件,这样,ole db 组件厂商就可以快速地向市场提供高质量 ole db 组件。此外,ole db 包含了一个连接 odbc 的“桥梁”,对现用的各种 odbc 关系型数据库驱动程序提供一贯的支持。
五 ado(activexdata object)是dao/rdo的后继产物。ado2.0在功能上与rdo更相似,而且一般来说,在这两种模型之间有一种相似的映射关系。ado"扩展"了dao和rdo 所使用的对象模型,这意味着它包含较少的对象、更多的属性、方法(和参数),以及事件。 作为最新的数据库访问模式,ado的使用也是简单易用,所以微软已经明确表示今后把重点放在ado上,对dao/rdo不再作升级,所以ado已经成为了当前数据库开发的主流。ado涉及的数据存储有dsn(数据源名称)、odbc(开放式数据连接)以及oledb三种方式
下一篇: 写出高性能SQL语句的35条方法分析