The MyODBC architecture is based on five components, as shown in the following diagram:
Application:
An application is a program that calls the ODBC API to access the data from the MySQL server. The Application communicates with the Driver Manager using the standard ODBC calls. The Application does not care where the data is stored, how it is stored, or even how the system is configured to access the data. It needs to know only the Data Source Name (DSN).
A number of tasks are common to all applications, no matter how they use ODBC. These tasks are:
Selecting the MySQL server and connecting to it
Submitting SQL statements for execution
Retrieving results (if any)
Processing errors
Committing or rolling back the transaction enclosing the SQL statement
Disconnecting from the MySQL server
Because most data access work is done with SQL, the primary tasks for applications that use ODBC are submitting SQL statements and retrieving any results generated by those statements.
Driver manager:
The Driver Manager is a library that manages communication between application and driver or drivers. It performs the following tasks:
Resolves Data Source Names (DSN)
Driver loading and unloading
Processes ODBC function calls or passes them to the driver
MyODBC Driver:
The MyODBC driver is a library that implements the functions in the ODBC API. It processes ODBC function calls, submits SQL requests to MySQL server, and returns results back to the application. If necessary, the driver modifies an application's request so that the request conforms to syntax supported by the MySQL.
ODBC.INI:
ODBC.INI
is the ODBC configuration
file that stores the driver and database information
required to connect to the server. It is used by the
Driver Manager to determine which driver to be loaded
using the Data Source Name. The driver uses this to read
connection parameters based on the DSN specified. For more
information, Section 25.1.9, « MyODBC Configuration ».
MySQL Server:
The MySQL server is the source of data. MySQL is:
A database management system (DBMS)
A relational database management system (RDBMS)
Open Source Software
This is a translation of the MySQL Reference Manual that can be found at dev.mysql.com. The original Reference Manual is in English, and this translation is not necessarily as up to date as the English version.