UDA综述


微软提供了UDA技术作为一个解决方案来解决从多个数据源中操作数据的问题。通过使用UDA技术,你可以通过一个公共的界面集合来到达不同的数据源,比如我们可以使用UDA来操作关系数据库(比如SQL SERVER,ORALCE)、文本文件、电子邮件、目录服务中的目录系统、OFFICE文档等等。

UDA包括了一个软件组件的集合用来和应用程序以及本身进行交互。UDA是基于COM之上的,所以UDA技术是和位置无关、语言无关,并且各个版本都是健壮的。MDAC是UDA的关键的实现。MDAC包括了ADO、OLE DB、ODBC、DAO、RDS等组件。ADO可以看成是OLE DB的上层,ODBC只能支持关系数据库,可以认为是一种过时的技术,DAO主要是用来和ACCESS数据库进行沟通,RDS是用来在服务器和客户机之间通过ADO进行记录集的传送,在基于Web的应用中大有作为。

如果大家经常从事在Windows下的数据库方面的开发工作的话,对ADO、OLE DB、DAO等一定已经不陌生,但是对RDS不一定非常熟悉,因为它主要是用在基于Internet的体系架构上的,所以有必要介绍一下RDS。

当前最新的RDS的版本是2.0,如果你当前用的IIS是4.0版本的话,你的RDS的版本是1.5的,注意只有在安装了IIS以后,系统才会带有RDS组件。RDS的目的就是让ADO的消费者能够通过远程的OLE DB提供者来获取数据,ADO消费者实际上是通过HTTP或者DCOM协议和数据提供者进行联系的,客户端应用可以选择直接和远程机器上的OLE DB提供者进行交互,或者是通过和远程机器上的COM控件进行交互,发出查询,接收结果集合。

当采用和OLE DB提供者直接交互这种模式的时候,客户端应用需要提供给数据提供者需要的所有信息,比如连接字符串和命令字符串。客户决定需要工作的特定的数据源和需要执行的特定的命令,服务器端把结果(一般是一个ADO Recordset结果集)返回给客户.

当采用和COM组件(该组件使用ADO记录集)交互的模式的时候,客户端应用程序激活中间件暴露出来的方法,然后把ADO Recordset作为一个参数进行传递,这里表示层和用户界面层驻留在客户端,业务逻辑层就驻留在中间件(COM组件)上,数据和引用一致性检查就在数据源端进行。这是真正的基于多层的开发模式.

Published At
Categories with 数据库类
Tagged with
comments powered by Disqus