开放式数据库连接性(ODBC)是广泛接受的用于数据库访问的应用程序编程接口(API)。它基于针对数据库API的CLI(调用层接口)规范(来自X/Open和ISO/IEC),并采用了结构化查询语言(SQL)作为其数据库访问语言。
在26.1.16节,“MyODBC API引用”中,概要介绍了MyODBC支持的ODBC功能。关于ODBC的更多信息,请参阅http://www.microsoft.com/data/。
· 应用程序:
应用程序指的是通过调用ODBC API来访问MySQL服务器上数据的程序。应用程序使用标准的ODBC调用与驱动管理器进行通信。应用程序不关心数据的存储位置,存储方式,甚至不关心为访问数据而进行的系统配置方式。它仅需要知道数据源名(DSN)。
对于所有的应用程序,无论它们使用OBDC的方式是什么,很多任务是共同的。这些任务包括:
o 选择MySQL服务器,并与之连接。
o 提交将要执行的SQL语句。
o 检索结果(如果有的话)。
o 处理错误。
o 提交或回滚包含SQL语句的事务。
o 断开与MySQL服务器的连接。
由于大多数数据访问工作是使用SQL完成,对于使用OBDC的应用程序来说,其主要任务是提交SQL语句,并检索由这些语句生成的结果。
· 驱动管理器:
驱动管理器是用于管理应用程序和驱动程序间通信的库。它负责执行下述任务:
o 解析数据源名(DSN)。
o 加载和卸载驱动程序。
o 处理ODBC调用,或将其传递给驱动程序。
· MyODBC驱动程序:
MyODBC驱动程序是用于实施ODBC API所提供功能的库。它负责处理ODBC函数调用,将SQL请求提交给MySQL服务器,并将结果返回给应用程序。如有必要,驱动程序会更改应用程序的请求,以便该请求符合MySQL支持的语法。
· ODBC.INI:
ODBC.INI是ODBC配置文件,其中保存了连接到服务器所需的驱动信息和数据库信息。驱动管理器将使用它来确定加载哪个驱动程序(使用数据源名)。驱动程序将根据指定的DSN使用它来读取连接参数。更多信息,请参见26.1.9节,“MyODBC配置”。
· MySQL服务器:
MySQL服务器是数据源。MySQL是:
o 一种数据库管理系统(DBMS)
o 一种关联数据库管理系统(RDBMS)
o 开放源码软件
· 解析数据源名(DSN)。
· 加载和卸载驱动程序。
· 处理ODBC函数调用,或将其传递给驱动程序。
下面给出了一些常用的驱动程序:
· Microsoft Windows ODBC驱动管理器(odbc32.dll),http://www.microsoft.com/data/
· unixODBC Unix驱动管理器(libodbc.so),http://www.unixodbc.org。
· iODBC ODBC Unix驱动管理器(libiodbc.so),http://www.iodbc.org。
从2.1.2版开始,UnixODBC也提供MyODBC 3.51。
26.1.2.4. MySQL ODBC驱动程序的类型
注释: 从本节起,我们将这两类驱动程序统称为MyODBC。但当存在差异时,我们将使用它们的本名。