Open Database Connectivity (ODBC) は、データベース アクセスのためのアプリケーション プログラム インターフェース (API) として広く受け入れられています。データベース API には、X/Open および ISO/IEC の Call-Level Interface (CLI) 規格が基になっており、データベース アクセス言語には Structured Query Language (SQL) が使われています。
Connector/ODBC にサポートされた ODBC 関数の概括は 項24.1.5.1. 「Connector/ODBC API 参考資料」 に記載されています。ODBC の一般情報は、http://www.microsoft.com/data/ を参照してください。
Connector/ODBC の構造は、次の図のように 5 つのコンポーネントから成っています :
アプリケーション :
アプリケーションは ODBC API を使用して、MySQL サーバのデータにアクセスします。次に、ODBC API が ドライバ マネージャーと接続します。アプリケーションは 標準 ODBC セルを使って、ドライバ マネージャーとコミュニケーションを取ります。データが保存される場所、保存の方法、またはデータにアクセスするためのシステムがどのように構成されているかなども、アプリケーションは一切問いません。アプリケーションに必要な情報は Data Source Name (DSN) のみです。
ODBC をどのように使用している場合でも、アプリケーションは通常的に複数の作業をこなします。作業には以下のようなものがあります:
MySQL サーバを選択して接続する
SQL 文で実行を要求
( もし結果があれば ) 結果を検索
エラーを処理
SQL 文を含んだトランザクションを完遂もしくはロールバック
MySQL サーバの接続解除
ほとんどのデータアクセス作業は SQL で行うため、ODBC を使用するアプリケーションの主な役割は、SQL 文の発行とその結果の検索になります。
ドライバ マネージャー :
ドライバ マネージャーは、アプリケーションとドライバ間のコミュニケーションを管理するライブラリです。その役割には次のようなものがあります :
Data Source Names ( DSN ) の解読DSN は、所定のデータベース ドライバ、データベース、データベース ホスト、またオプションとして、標準化されたリファレンスを使ってデータベースへ接続する ODBC アプリケーションを有効にする承認情報、などを識別する構成ストリングです。
データベース接続情報は DSN で区別されるため、どの ODBC 準拠アプリケーションでも、同じ DSN リファレンスを使ってデータソースに接続することができます。これによって、所定のデータベースにアクセスする各アプリケーションを別々に構成する必要がなくなり、事前に設定された DSN を使用するようアプリケーションに指示するだけで済みます。
ドライバをロードおよびアンロードするには、DSN 内で定められた特定のデータベースにアクセスする必要があります。例えば、MySQL データベースへ接続する DSN を設定した場合、ドライバ マネージャーが Connector/ODBC ドライバをロードして ODBC API を有効にし、MySQL ホストと接続します。
ODBC 関数呼び出しを処理し、または呼び出しをドライバに送って処理させます。
Connector/ODBC ドライバ :
Connector/ODBC ドライバは、ODBC API にサポートされた機能を実現するライブラリです。ODBC 関数呼び出しを処理し、SQL リクエストを MySQL サーバにサブミットし、結果をアプリケーションに戻します。ドライバは必要に応じて、アプリケーションの要求を、MySQL にサポートされたシンタックスに適合するよう改修します。
DSN 設定 :
ODBC 設定ファイルは、サーバへの接続が必須のドライバとデータベースの情報を保管します。そのファイルは、ドライバ マネージャーが、DSN の設定によって、どのドライバをロードするかを決定するのに使われます。ドライバはこれを使用し、DSN の指定に沿って接続パラメータを読み取ります。詳細は 項24.1.3. 「Connector/ODBC の構成」 をご覧ください。
MySQL サーバ :
情報を保管する場所が、MySQL データベースです。データベースは、データの情報源 ( 問い合わせの間 ) 、そしてデータの宛先 ( 挿入または更新の間 ) として利用されます。
ODBC ドライバ マネージャーは、ODBC 認識アプリケーションと各種ドライバ間の通信を管理するライブラリです。以下がその主な機能です :
Data Source Names ( DSN ) の解決
ドライバのロードおよびアンロード
ODBC 関数呼び出しの処理、またはドライバへの呼び出し送信
Windows および Mac OS X のオペレーション システムには、ODBC ドライバ マネージャーが含まれています。また、ほとんどの ODBC ドライバ マネージャーには、DSN とドライバの設定を容易にする運用管理アプリケーションが実装されています。Unix ODBC ドライバ マネージャーを含む、これらのマネージャーの例と詳細については、以下の記述を参考にしてください :
Microsoft Windows ODBC ドライバ マネージャー (
odbc32.dll
)
http://www.microsoft.com/data/
Mac OS X
には、よりシンプルな構成メカニズムを
Unix iODBC ドライバ マネージャーに提供する
GUI アプリケーション、ODBC
Administrator
が組み込まれています。ODBC Administrator
もしくは iODBC 設定ファイルを介して、DSN
とドライバ情報を構成することができます。これはまた、iodbctest
コマンドを使用して、ODBC Administrator
の設定をテストできるということでもあります。
http://www.apple.com.
Unix 用 unixODBC
ドライバ
マネージャー ( libodbc.so
)
。詳細は http://www.unixodbc.org
をご覧ください。unixODBC
2.1.2.
以降のバージョンでは、unixODBC
ドライバ マネージャーのインストール
パッケージに Connector/ODBC ドライバ 3.51
が含まれています。
Unix 用 iODBC
ODBC ドライバ
マネージャー ( libiodbc.so
)
。詳細は http://www.iodbc.org
を参照。