数据库连接技术之OLE DB
之前的博客介绍了ODBC和JDBC。这次简单的介绍一下OLE DB。ODBC的总结不知道是没贴到博客上还是不在这个博客上,我再找找,没有的话我再补充到时候。好了。開始吧。
回想
之前呢介绍过了ODBC和JDBC主要的结构是一样的,也就是本质一致。都是是訪问数据库的一套统一的接口,是一系列的规范和对数据库訪问的API。差别仅仅是在于ODBC是由C++语言实现的而JDBC是有Java实现的,之所以出现JDBC是由于Java程序和C++的ODBC之间的通信不便。
能够说ODBC和JDBC二者之间的关系是横向的。而OLE DB相对与ODBC的关系则是纵向的。为什么这么说呢?
OLE DB之历史
为什么说OLE DB((Object Linking and Embedding, Database)和ODBC之间的关系是纵向的呢。
这还是要从ODBC说起,ODBC是一套接口。可是ODBC仅仅支持訪问关系型数据库,既二维数据数据库。可是随着技术的发展显然我们须要面对的不在仅仅是关系型的数据库。还须要訪问不能使用SQL訪问的非关系行和层次结构行数据,包含邮件系统中的数据、Web上的文本、文件夹服务等形式。因此。从数据源的角度来说OLE
DB 和ODBC的关系例如以下图:
基于COM标准
ODBC是基于API的实现,而OLE DB则是基于COM标准。
也就是说在实现上ODBC必须支持差点儿全部的DBMS特征和功能,而OLE DB则能够部分实现。
这里不太理解能够查查什么事COM标准。
OLE DB构成
OLE DB包含几个逻辑组件,由于其基于COM标准,所以组件之间相互独立,仅保持通信。
数据提供者(Data Provider):凡是通过OLE DB将数据提供出来的。即数据库提供者。数据提供者的概念能够和ODBC中的驱动程序对照理解。
数据消费者(Data Consumer):使用了OLE DB提供的数据的程序或组件。
服务组件(Service Component):运行数据提供者和数据消费者之间的数据传递工作。
业务组件(Bussiness Component):利用服务组件专门完毕某种特定业务信息处理。是能够重用的功能组件。
OLE DB和ADO
之前的博客绝对是介绍过ADO了,这里ADO是OLE DB的进一步封装,在程序中的关系例如以下:
总的来说:OLE DB是ODBC的扩充。它基于COM标准,具有比ODBC更高的灵活性。只是终于也还是链接数据库的一套标准。仅仅只是相对与ODBC来说更底层。
数据库连接技术之OLE DB的更多相关文章
- 数据库访问接口(ODBC、OLE DB、ADO)
最近在学C#的数据库编程,对于数据库接口技术这块的知识一直比较模糊,网上查了不少资料,看了几天还是朦朦胧胧的,只能做些笔记再研究了. 我们都知道,“数据库”是指一组相关信息的集合,最早的计算机应用之一 ...
- (4.3)ODBC/OLE DB/ADO概念与使用情况
一.ODBC ODBC的由来 1992年Microsoft和Sybase.Digital共同制定了ODBC标准接口,以单一的ODBC API来存取各种不同的数据库.随后ODBC便获得了许多数据库厂 ...
- ODBC、OLE DB、 ADO的区别
转自:http://blog.csdn.net/yinjingjing198808/article/details/7665577 一.ODBC ODBC的由来 1992年Microsoft和Syba ...
- 【转载】OLE DB, ADO, ODBC关系与区别
原文:OLE DB, ADO, ODBC关系与区别 OLE DB, ADO, ODBC 一. ODBC(Open Database Connectivity,开放数据库互连)是微软公司开放服务结构(W ...
- 【转】ODBC、OLE DB、 ADO的区别
一.ODBC ODBC的由来 1992年Microsoft和Sybase.Digital共同制定了ODBC标准接口,以单一的ODBC API来存取各种不同的数据库.随后ODBC便获得了许多数据库厂商和 ...
- 用户 'NT AUTHORITY\NETWORK SERVICE' 登录失败/OLE DB 错误: OLE DB 或 ODBC 错误 :
用户 'NT AUTHORITY\NETWORK SERVICE' 登录失败/OLE DB 错误: OLE DB 或 ODBC 错误 : 2012-2-23 上午 ,弄SAAS时,发现在生成多维数据集 ...
- JDBC、ODBC、OLE DB、ADO、ADOMD区别与联系
ODBC: (Open Database Connectivity,开放数据库互连),它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口).这些API利用SQL来完成其大部分任务 ...
- Java数据库连接技术——JDBC
大家好,今天我们学习了Java如何连接数据库.之前学过.net语言的数据库操作,感觉就是一通百通,大同小异. JDBC是Java数据库连接技术的简称,提供连接各种常用数据库的能力. JDBC API ...
- OLE DB Command transformation 用法
OLE DB Command transformation component 能够引用参数,逐行调用sqlcommand,This transformation is typically used ...
随机推荐
- 基于visual Studio2013解决面试题之0206hash表实现
题目
- C++ overloading contructor
// overloading class constructors #include <iostream> using namespace std; class Rectangle ...
- 在VC资源文件中加入声音资源
本文介绍如何在VC资源文件中加入自己的声音资源,使自己的应用程序可以播放声音. 1.首先用文本编辑器(如记事本)打开资源文件(.rc文件) 在最后加入自己的声音资源,如下IDW WAVE " ...
- perl 异步请求和JS对比
perl 异步和js对比: /js************** $(function(){ function isPhone(str){ var regex = /[0-9]{11,11}/; ret ...
- 【Demo 0006】iOS常用控件
本章学习要点 1. 了解iOS中控件继承关系: 2. 掌握UIControl基础知识; 3. 掌握UIButton基本用法: 4. 掌握UILa ...
- 同事的Excel中的图片突然不能选择
今天上午,同事突然说自己用的Excel不能编辑了,发来一看原来是其中做的图片不能编辑,鼠标放上去后显示个圆圈选不中. 在“视图”中调出“控件工具箱”工具栏,上面有一个三角板与直尺样子的按钮叫“设计模式 ...
- Hibernate @Embeddable注解
在hibernate中实现自己定义类型,仅仅要实现UserType接口就可以或者以Component的形式提供.JPA的@Embedded有点类似,通过此凝视能够在你的Entity中使用一般的java ...
- jquery clone方法
引用自http://www.w3school.com.cn/tiy/t.asp?f=jquery_manipulation_clone <html> <head> <sc ...
- winDbg 命令使用帮助
srv*C:/symbol*http://msdl.microsoft.com/download/symbols;D:\Desktop\CMS_Dump symck //检查pdblm //显示pdb ...
- git flow 的使用
在这里主要讲一下我在项目中用到的关于gitflow的使用方法. 公司的项目中,专门有一台用来存放版本号库的server,路径是在默认的安装文件夹/opt/git/,那么在使用的时候,假设你是 ...