Hitachi

DBPARTNER2 Client プログラマーズガイド


5.7 ODBC関数の非同期実行

ODBC関数を実行するときは,通常ODBCドライバはODBC関数を同期実行します。このときODBCドライバは,関数の呼び出しが終了するまで,制御をアプリケーションに返しません。

アプリケーションの処理の効率を上げるため,一部のODBC関数は,処理の終了を待たないでアプリケーションに制御を戻せます。このようなODBC関数の実行方法を非同期実行といいます。

ODBCの規約で非同期実行できる関数とDBPARTNER ODBC Driverで非同期実行できるかどうかを表5-28に示します。

表5‒28 ODBCの規約で非同期実行できる関数とDBPARTNER ODBC Driverでの非同期実行の可否

ODBCの規約で非同期実行できる関数名

DBPARTNER ODBC Driverで非同期実行できるかどうか

SQLColAttributes

×

SQLColumnPrivileges

SQLColumns

SQLDescribeCol

×

SQLDescribeParam

×

SQLExecDirect

SQLExecute

SQLFetch

SQLForeignKeys

×

SQLGetData

×

SQLGetTypeInfo

×

SQLMoreResults

×

SQLNumParams

×

SQLNumResultCols

×

SQLParamData

SQLPrepare

SQLPrimaryKeys

SQLPutData

×

SQLSpecialColumns

×

SQLStatistics

SQLTablePrivileges

SQLTables

(凡例)

○:DBPARTNER ODBC Driverで非同期実行できます。

×:DBPARTNER ODBC Driverで非同期実行できません。

非同期実行のキャンセルと環境定義の非同期キャンセル機能との関係(DBPARTNER/Client32でODBCドライバを使うときの注意)

[DBPARTNER ODBC Driver for DABroker−環境定義−]ダイアログボックスの[非同期キャンセル機能を使用する]チェックボックスの指定は,DBPARTNER/Client32を使うときのオプションです。これは,ODBC規約の正式な非同期キャンセル機能ではありません。したがって,このチェックボックスの指定は,ODBC関数を非同期実行するときは無効になります。