Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > ADP及SQL SERVER

odbc的概念

时 间:2008-08-26 21:03:00
作 者:UMVsoft整理   ID:8  城市:上海  QQ:2851379730点击这里给张志发消息
摘 要:odbc的概念解释
正 文:

        ODBC(OpenDatabaseConnectivity,开放数据库互连)是微软公司开放服务结构(WOSA,WindowsOpenServicesArchitecture)中有关数据库的一个组成部分,它建立了一组规范,并提供了一组对数据库访问的标准API(应用程序编程接口)。这些API利用SQL来完成其大部分任务。ODBC本身也提供了对SQL语言的支持,用户可以直接将SQL语句送给ODBC。

       ODBC是Open Database Connectivity的缩写,是MICROSOFT提出的数据库访问接口标准。ODBC定义了访问数据库的API一个规范,这些API独立于不同厂商的DBMS,也独立于具体的编程语言(但是MICROSOFT的ODBC文档是用C语言描述的,许多实际的ODBC驱动程序也是用C语言写就的。)ODBC规范后来被X/OPEN和ISO/IEC采纳,作为SQL标准的一部分,具体内容可以参看《ISO/IEC 9075-3:1995 (E) Call-Level Interface (SQL/CLI)》等相关的标准文件。

        ODBC现在看来是一个比较古老的东西,在1996年左右就比较定型了,其最新的版本是3.52,MICROSOFT也不打算对它做什么大的更新,更多的目光应该被放到OLEDB、.NET DATA PROVIDER身上了。然而,正因为它是一个比较成熟和古老的规范,ODBC在大多数DBMS上都做可以使用,可以说一个像样的DBMS都应该支持ODBC 3.0或以上的版本。

        如果你打算学习基于ODBC API的应用开发,最好的参考资料是MSDN。如果你打算学习如何开发一个ODBC DRIVER,最好的参考资料还是MSDN。如果你不打算采用ODBC API做开发,学习和了解ODBC也可以增加对DBMS的了解,也能更好地理解其他的数据库访问接口和技术。


        一个基于ODBC的应用程序对数据库的操作不依赖任何DBMS,不直接与DBMS打交道,所有的数据库操作由对应的DBMS的ODBC驱动程序完成。也就是说,不论是FoxPro、Access还是Oracle数据库,均可用ODBCAPI进行访问。由此可见,ODBC的最大优点是能以统一的方式处理所有的数据库。

        开放数据库互连(ODBC)是Microsoft引进的一种早期数据库接口技术。它实际上是我们要在本章后面加以讨论的ADO的前身。Microsoft引进这种技术的一个主要原因是,以非语言专用的方式,提供给程序员一种访问数据库内容的简单方法。换句话说,访问DBF文件或Access Basic以得到MDB文件中的数据时,无需懂得Xbase程序设计语言。事实上,Visual C++就是这样一个程序设计平台,即Microsoft最初是以ODBC为目标的。

        你会发现,ODBC工作起来和Windows一样枣它用包含在DLL内的驱动程序完成任务。其实,ODBC提供一套两个驱动程序:一个是数据库管理器的语言,另一个为程序设计语言提供公用接口。允许Visual C++用标准的函数调用经公用接口访问数据库的内容,是这两个驱动程序的汇合点。当然,还有其它和ODBC有关的实用程序类型的DLL。例如,一个这样的DLL允许你管理ODBC数据源。ODBC的实际管理接口出现在SYSTEM文件夹中的某个CPL(控制面板)文件中枣我们在后面要谈到这方面的问题。

        ODBC的确能履行承诺,提供对数据库内容的访问,并且没有太多的问题。它没有提供数据库管理器和C之间尽可能最好的数据转换,这种情况是有的,但它多半能像广告所说的那样去工作。唯一影响ODBC前程的是,它的速度极低枣至少较早版本的产品是这样。ODBC最初面世时,一些开发者曾说,因为速度问题,ODBC永远也不会在数据库领域产生太大的影响。然而,以Microsoft的市场影响力,ODBC毫无疑问是成功了。今天,只要有两种ODBC驱动程序的一种,那么几乎每一个数据库管理器的表现都会很卓越。



Access软件网QQ交流群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助