ADO

来源:互联网 发布:斗鱼 网络视听许可证 编辑:程序博客网 时间:2024/05/14 05:48
ADO是一个相当简单的思想,而又不算一个新思路,仅是采用现有的数据库访问技术,并将其融合而形成的一种适应现在和未来需求的新东西。许多其他的技术,比如DAO和ODBC,在一些应用程序的开发过程中是可以接受的,然而随着INTERNET的兴起也出现了其自身的一些问题。
在许多情况下,传统的数据存取方法看上去能解决一些关于两层客户、服务器系统的问题,但要求与数据之间要保持一种永久性的连接,并要提供强大的功能,比如快速响应的查询,数据容易修改等。
现在MICOROSOFT对应用程序访问各种各样的数据源所使用的方法是OLEDB,OLEDB介于ODBC层和应用程序之间,在用户的ASP硬骨头同中,ADO是介于OLEDB之上的“应用程序”,显示了OLEDB,ADO与应用程序和数据存储的相互关系。OLEDB是一套组件对象模型COM接口,但它是相当复杂的。这样用户需要一个连接应用程序与OLEDB的桥梁,这就是ADO。而且,它支持开放式数据库连接(ODBC)标准的关系型数据库。其主要优点是易于使用,高速度,低内存支出和占用磁盘空间较少。ADO支持用于建立基于客户端,服务器和WEB的应用程序的主要功能。
ADO是如何在应用程序和真实数据存储之间发挥作用的,在ADO技术中,会看到两个常用术语,消费者和提供者,搞清它们的确切定义至关重要。
提供者是数据的物体,消费者是使用这些数据的物体。在编程中,经常会发现应用程序的数据的消费者,提供者一般是数据存储,并且由于OLEDB被设计成用于不同的数据存储对话,因此对于每一个独特类型的存储都有一个OLEDB提供者。
这种单独提供的思想并不新,但使编程变得容易了,编写程序与ADO或OLEDB对话,OLEDB再与提供者对话。这意味着只需要学会一套访问数据库的方法,无论数据如何存储,在某些情况下确实可以完全不改变任何代码而只更换提供者。这就是ADO和OLEDB真正的优越地方,为数据存储提供了一套常用的编程接口。
要连接到数据存储,必须使用OLEDB提供者。提供给ADO的初始设置为
JET OLEDB 4.0:用于微软ACCESS数据库
DTS PAKAGES:用于SQL SERVER 的数据库转换服务
INTERNET PUBLISHING:用于访问WEB服务器。
INDEXING SERVICES:用于索引目录
SIT SERVER SEARCH 用于站点服务器查找目录。
ODBC DRIVERS:用于ODBC数据源。
OLAP SERVICES:用于微软OLAP服务器
ORACLE:用于OLACLE数据库。
SQL SERVER:用于微软SQL SERVER数据库。
SIMPLE PROVIDER 用于简单的文本文件。
MSDATASHAPE 用于层次数据。
MICROSOFT DIRECTORY SERVICES 用于WINDOWS 2000的目录服务。
DTS FLAT FILE 用于SQL SERVER的数据转换服务的平面文件管理。
这只是微软提供的初始表,并取决于安装在服务器上的服务及软件。用户可以从别的制造商那里获得OLEDB提供者,用于其他数据存储,甚至还可以编写自己的提供者。
提供者和驱动程序
值得注意的是,OLEDB对ODBC的兼容性,允许OLEDB访问现有的ODBC数据源。其优点很明显,由于ODBC相对OLEDB来说使用得更为普遍,因此可以获得的ODBC驱动程序相应地要比OLEDB的要多。这样不一定要得到OLEDB的驱动程序,就可以立即访问原有的数据系统。
避免混淆提供者与驱动程序是非常重要的,提供者位于OLEDB层,而驱动于ODBC层。如果想使用一个ODBC数据源,需要使用针对ODBC的OLEDB提供者,它会接着使用相应的ODBC驱动程序,如果不需要使用ODBC数据源,那么可以使用相应的OLEDB提供者,这些通常称为本地提供者。可以清楚地看出使用ODBC提供者意味着需要一个额外的层。因此,当访问相同的数据时,针对ODBC的OLEDB提供者可能会比本地的OLEDB提供者的速度慢一些。