ODBC或BDE:是如何与多种数据库连接的,连接的结构(strUCt)包括那些,在与数据库交互的过程中,关系型数据库的客户端作为什么角色?
ODBC的标准是什么?
ADO:是基于什么封装的,连接时用到哪些.dll?需要哪些组件才能连接?
OLEDB:是如何与多种数据库连接的,需要哪些组件才能连接?与ODBC的关系?
ADO与它们有什关系,只是一个对象。
OLEDB,ODBC都是提供连接数据库动态连接库。直接与数据库打交道,具体可以参考ado与ado.net一书
ADO即ActiveXDataObjects,是微软提供的使ASP具有访问数据库的Components。ADO与RDO(RemoteDataObjects)有某种类似的地方。但据说ADO的访问的速度更快,内存需要更小。
ODBC的标准是什么?
MS公司自家和数据库公司定的~
ADO:是基于什么封装的,连接时用到哪些.dll?需要哪些组件才能连接?
中间件,可以VC/VB/Delphi...被引用(是对象概念)
BDE:跟ADO的概念差不多,是中间件的一种。(不过,是Borland公司自己用)
我也来复习一下:
ODBC:开放数据库连接标准。提供独立于DBMS的处理关系数据库中的数据的办法。(是一种编程接口,能使应用程序以sql访问DBMS)
OLEDB:一个封装了数据库服务器功能的面向对象的接口,为多种数据库类型服务。
是MicrosoftOLD对象标准的一个实现。OLEDB对象本身是COM对象,并支持这种对象的所有必需的借口。
ADO(ActiveDataObject):动态数据对象。这是使用OLEDB的一组对象。
一种简单的对象模型,可以被数据消费者用来处理任何OLEDB数据。
《数据库处理:原理,方法,实现》---似乎是这个名字,原来南京新华书店有的,似乎还是英文的,应该也有中文的。是本数据库方面的经典教材。
ODBC体系结构:
WEB服务器
--------------------------
应驱动DBMS驱动程序1------dbms1-----db
用程序DBMS驱动程序2------dbms2-----db
治理程序DBMS驱动程序3------dbms3-----db
DBMS驱动程序4------dbms4-----db
--------------------------
画得不好,见谅!
舞里看花
我总认为odbc就像Java一样是种解释性的通用数据库连接平台
而oledb就像是c语言一样比较接近底层,dbo就当是c++吧
然后呢dbms就像是汇编语言,db就算是机器代码了
是不是有较大的偏差?
至于他的具体机制就不怎么清楚了
反正写程序的时候连接总是从别处拷过来的
:)
OLEDB,ODBC都是提供连接数据库动态连接库
ADO(ActiveXDataObjects),RDO(RemoteDataObjects)是访问数据库的一个对象(可以使用某些函数方法,操作其结果集对数据库进行操作)
OLEDB技术提供了一组较低级的数据库操作函数如连接等(一般以动态连接库形式发布)
MS为了使人们更易于使用这种技术进行操作,于是提出了一种新的也就是ADO数据库访问技术。主要是对OLEDB的一些函数进行封装,使之更轻易使用
假如想知道它们的关系,你可以参考一下李维的Delphi5高效数据库编程那本书,前几章印象之中就是介绍这些个东西的
BDE:在发展初期,主要用于封装对dbf、paradox等文件数据库的访问接口,后来提供了对ODBC访问的接口,并逐渐封装了对大多数主流DBMS访问的接口。BDE最大好处,一方面是支持非常多的文件型数据格式,另一方面就是提供良好的数据缓存技术,支持双向游标,但同时牺牲了性能,从这点,我认为BDE不能算是一个最优的数据访问引擎。目前,Borland公司已经停止了BDE的发展,将以DBEXPress技术取而带之。