CLI の手引きおよび解説書

付録 C. DB2 CLI と ODBC

この付録では、DB2 ODBC ドライバーで用意されているサポートについて説明するとともに、 DB2 CLI との相違点も説明します。

下記の 図 18 では、DB2 CLI と DB2 ODBC ドライバーを比較しています。

  1. ODBC ドライバー・マネージャーの ODBC ドライバー
  2. DB2 CLI、DB2 固有のアプリケーション用に設計された呼び出し可能インターフェース

DB2 クライアントとは、使用可能なすべての DB2 クライアントを指します。 DB2 とある場合、すべての DB2 ユニバーサル・データベース製品を指します。

図 18. DB2 CLI と ODBC


DB2 CLI および ODBC

ODBC 環境では、ドライバー・マネージャーがアプリケーションへのインターフェースを提供します。また、アプリケーションの接続先のデータベース・サーバーに必要なドライバー を動的にロードします。 ODBC 関数の集まりを使用するのはドライバーです。ただし、いくつかの拡張機能は例外で、ドライバー・マネージャーによって使用されます。この環境では、DB2 CLI は、ODBC 2.0 のレベル 2 および ODBC 3.0 のレベル 1 に合致します。さらに、以下の ODBC 3.0 レベル 2 インターフェース合致項目とも合致します。

202
SQLDescribeParam を使用して記述した動的パラメーター
203
入力、出力、および入出力パラメーターのほか、ストアード・プロシージャーの結果値のサポート
205
SQLColumnPriviledge、SQLForeignKey、および SQLTablePrivileges からのデータ・ディクショナリーに関する拡張情報
207
該当する関数の非同期実行
209
SQL_ATTR_CONCURRENCY ステートメント属性は、 SQL_CONCUR_READ_ONLY 以外の少なくとも 1 つの値に設定可能
211
省略時の分離レベルは変更可能。トランザクションは、"シリアル化" レベルの分離で実行可能

ODBC アプリケーションの開発の際には、 ODBC ソフトウェア開発キットを (Microsoft プラットフォームの場合は Microsoft から、 Microsoft 以外のプラットフォームの場合は他のベンダーから) 入手してください。 DB2 サーバーに接続する可能性のある ODBC アプリケーションを開発する場合、本書 (DB2 特定の拡張についての情報および診断情報) と ODBC 3.0 Software Development Kit and Programmer's Reference を併用してください。

ODBC ドライバー・マネージャーのない環境では、DB2 CLI は自己完結的なドライバーとなり、 ODBC ドライバーが提供する関数のサブセットをサポートします。 表 187 には 2 つのレベルのサポートが要約されており、また、表 12 には ODBC 3.0 関数の完全なリストがあって、それらがサポートされているかどうかが示されています。

表 187. DB2 CLI ODBC サポート
ODBC 機能 DB2 ODBC ドライバー DB2 CLI
コア・レベル関数 すべて すべて
レベル 1 関数 すべて すべて
レベル 2 関数 すべて SQLDrivers() 以外すべて
付加的な DB2 CLI 関数 すべて。関数は DB2 CLI ライブラリーを動的にロードすることによってアクセス可能。詳細については 付録 A, プログラミングのヒントと提案を参照。
SQL データ・タイプ DB2 CLI 用にリストされているすべてのタイプ、および次のもの
  • SQL_BINARY
  • SQL_VARBINARY
  • SQL_LONGVARBINARY
  • SQL_BIGINT
  • SQL_BINARY
  • SQL_BLOB
  • SQL_BLOB_LOCATOR
  • SQL_CHAR
  • SQL_CLOB
  • SQL_CLOB_LOCATOR
  • SQL_DBCLOB
  • SQL_DBCLOB_LOCATOR
  • SQL_DECIMAL
  • SQL_DOUBLE
  • SQL_FLOAT
  • SQL_GRAPHIC
  • SQL_INTEGER
  • SQL_LONGVARBINARY
  • SQL_LONGVARCHAR
  • SQL_LONGVARGRAPHIC
  • SQL_NUMERIC
  • SQL_REAL
  • SQL_SMALLINT
  • SQL_TYPE_DATE
  • SQL_TYPE_TIME
  • SQL_TYPE_TIMESTAMP
  • SQL_VARBINARY
  • SQL_VARCHAR
  • SQL_VARGRAPHIC

C データ・タイプ DB2 CLI 用にリストされているすべてのタイプ、および次のもの。
  • SQL_C_BINARY
  • SQL_C_BIT
  • SQL_C_BLOB_LOCATOR
  • SQL_C_CHAR
  • SQL_C_CLOB_LOCATOR
  • SQL_C_DATE
  • SQL_C_DBCHAR
  • SQL_C_DBCLOB_LOCATOR
  • SQL_C_DOUBLE
  • SQL_C_FLOAT
  • SQL_C_LONG
  • SQL_C_SHORT
  • SQL_C_TIME
  • SQL_C_TIMESTAMP
  • SQL_C_TINYINT
  • SQL_C_SBIGINT
  • SQL_C_UBIGINT
  • SQL_C_NUMERIC **
** 32 ビット Windows 上でのみサポートされる
戻りコード DB2 CLI 用にリストされているすべてのコード。
  • SQL_SUCCESS
  • SQL_SUCCESS_WITH_INFO
  • SQL_STILL_EXECUTING
  • SQL_NEED_DATA
  • SQL_NO_DATA_FOUND
  • SQL_ERROR
  • SQL_INVALID_HANDLE

SQLSTATES 付加的な IBM SQLSTATES を用いて X/Open SQLSTATES にマッピングされる。例外は ODBC タイプ 08S01。 付加的な IBM SQLSTATES を用いて X/Open SQLSTATES にマッピングされる。
アプリケーションごとに複数の接続 サポートされる サポートされる
ドライバーの動的ロード サポートされる 該当せず

ODBC について、詳しくは ODBC 3.0 Software Development Kit and Programmer's Reference を参照してください。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]