对象链接嵌入数据库OLEDB(Objects Link Embed Data Base)是一种数据库结构,它可以使程序具有对存储于不同信息源的数据的一致访问。倘若使用像select * from table这样的SQL语句可访问到不同类型的数据库,如Oracle、Access等。OLEDB是微软公司通向不同的数据源的低级应用程序接口。OLE DB不仅包括微软公司资助的标准数据接口开放数据库连通性(ODBC)结构化查询语言(SQL)的功能,还具有面向其他非SQL数据类型的通路。OLE DB不仅可以链接各种数据库,还可以链接exchange、活动目录、甚至操作系统文件目录等各种数据库源。
OLE DB不仅是桌面应用程序集成,而且还定义和实现了一种允许应用程序作为软件“对象”(数据集合和操作数据的函数)彼此进行“链接”的机制,这种链接机制和协议称为“部件对象模型”。
OLE DB是一种面向对象的技术,利用这种技术可开发可重复使用的软件组件(COM)。
OLE DB将传统的数据库系统划分为多个逻辑组件,这些组件之间相对独立又相互通信。这种组件模型中的各个部分被冠以不同的名称。
●数据提供者(Data Provider)。提供数据存储的软件组件,小到普通的文本文件,大到主机上的复杂数据库,都可被称为数据提供者。有的文档把这些软件组件的开发商也称为数据提供者。(www.xing528.com)
●数据服务提供者(Data Service Provider)。位于数据提供者之上、从过去的数据库管理系统中分离出来、独立运行的功能组件。例如,查询处理器和游标引擎(Cursor Engine),这些组件使得数据提供者提供的数据以表状数据(Tabular Data)的形式向外表示(无论真实的物理数据是如何组织和存储),并实现数据的查询和修改功能。SQL Server 7.0的查询处理程序就是这种组件的典型例子。
●业务组件(Business Component)。利用数据服务提供者、专门完成某种特定业务信息处理、可以重用的功能组件。分布式数据库应用系统中的中间层(Middle⁃Tier)就是这种组件的典型例子。
●数据消费者(Data Consumer)。任何需要访问数据的系统程序或应用程序,除了典型的数据库应用程序外,还包括需要访问各种数据源的开发工具或语言。
由于OLEDB和ODBC标准都是为了提供统一的访问数据接口,所以曾经有人疑惑:OLE DB是不是替代ODBC的新标准?答案是否定的。实际上,ODBC标准的对象是基于SQL的数据源(SQL⁃Based Data Source),而OLEDB的对象则是范围更为广泛的任何数据存储。从这个意义上说,符合ODBC标准的数据源是符合OLEDB标准的数据存储的子集。符合ODBC标准的数据源要符合OLEDB标准,还必须提供相应的OLEDB服务程序(Service Provider),就像SQL Server要符合ODBC标准,必须提供SQL Server ODBC驱动程序一样。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。