Connector/ODBC架构基于五个组件,如下图所示:
应用程序:
应用程序使用ODBC API从MySQL服务器访问数据。ODBC API反过来与驱动程序管理器通信。应用程序使用标准ODBC调用与驱动程序管理器通信。应用程序不关心数据存储在哪里、如何存储,甚至不关心如何配置系统以访问数据。它只需要知道数据源名称(DSN)。
许多任务对于所有应用程序都是通用的,无论它们如何使用ODBC。这些任务包括:
因为大多数数据访问工作都是用SQL完成的,所以使用ODBC的应用程序的主要任务是提交SQL语句并检索由这些语句生成的任何结果。
驱动程序管理器:
驱动程序管理器是一个库,用于管理应用程序和驱动程序之间的通信。它执行以下任务:
解析数据源名称(DSN)。DSN是一个配置字符串,它标识给定的数据库驱动程序、数据库、数据库主机和可选的身份验证信息,这些信息使ODBC应用程序能够使用标准化引用连接到数据库。
因为数据库连接信息是由DSN识别的,所以任何符合odbc的应用程序都可以使用相同的DSN引用连接到数据源。这样就不需要分别配置需要访问给定数据库的每个应用程序;相反,您指示应用程序使用预先配置的DSN。
加载和卸载访问DSN中定义的特定数据库所需的驱动程序。例如,如果您配置了一个连接到MySQL数据库的DSN,那么驱动程序管理器将加载Connector/ODBC驱动程序,以使ODBC API能够与MySQL主机通信。
处理ODBC函数调用或将它们传递给驱动程序进行处理。
连接器/ ODBC驱动程序:
Connector/ODBC驱动程序是一个实现ODBC API支持的函数的库。它处理ODBC函数调用,向MySQL服务器提交SQL请求,并将结果返回给应用程序。如果有必要,驱动程序修改应用程序的请求,以使请求符合MySQL支持的语法。
DSN配置:
ODBC配置文件存储连接到服务器所需的驱动程序和数据库信息。驱动程序管理器使用它来根据DSN中的定义确定要加载哪个驱动程序。驱动程序使用它来根据指定的DSN读取连接参数。有关更多信息,第5.5节,“配置连接器/ODBC”.
MySQL服务器:
存储信息的MySQL数据库。数据库被用作数据源(在查询期间)和数据的目的地(在插入和更新期间)。