23.2.8 カーソルオプションの設定
ODBCインタフェース機能では,ODBCカーソルライブラリの静的カーソルを使用するように次のODBCのオプションを設定してSQLのカーソル処理を実現しています。
オプション名 |
設定値 |
機能 |
---|---|---|
接続オプション |
SQLSetConnectOption(hdbc,SQL_ODBC_CURSORS,SQL_CUR_USE_ODBC); |
ドライバマネージャは,ドライバのスクロール機能を使用します。 |
ステートメントオプション |
SQLSetStmtOption(hstmt,SQL_CONCURRENCY,SQL_CONCUR_VALUES); |
カーソルは最適化同時実行制御を使用して値を比較します。 |
SQLSetStmtOption(hstmt,SQL_CURSOR_TYPE,SQL_SCROLL_STATIC); |
結果セットのデータは静的なデータとなります。 |
ODBCドライバによって,ODBCカーソルライブラリの使用をサポートしていないことがあります。使用するODBCドライバが,これらの接続オプションおよびステートメントオプションをサポートしているかどうかを確認してください。
ODBCカーソルライブラリを使用しない場合は,実行時環境変数CBLSQLCURUSEを指定してください。
- 〈この項の構成〉
(1) 実行時環境変数CBLSQLCURUSE
- 形式
CBLSQLCURUSE=DYNAMIC
- 規則
-
- DYNAMIC
-
ODBCドライバのスクロール機能の動的カーソルを使用するように設定します。この実行時環境変数の指定がない場合は,ODBCカーソルライブラリの静的カーソルを使用するようにODBCオプションを設定します。DYNAMIC以外の値を指定した場合の結果は,保証しません。
DYNAMICを指定した場合,次の太字のオプションがデフォルトから変更されます。
表23‒5 DYNAMICを指定した場合の設定値と機能 オプション名
設定値
機能
接続オプション
SQLSetConnectOption(hdbc,SQL_ODBC_CURSORS,SQL_CUR_USE_DRIVER);
ドライバマネージャは,ドライバのスクロール機能を使用します。
ステートメントオプション
SQLSetStmtOption(hstmt,SQL_CONCURRENCY,SQL_CONCUR_VALUES);
カーソルは最適化同時実行制御を使用して値を比較します。
SQLSetStmtOption(hstmt,SQL_CURSOR_TYPE,SQL_SCROLL_DYNAMIC);
ドライバは行セットの行に対するキーだけを保存して使用します。
(2) 注意事項
この環境変数の指定で設定する接続オプションまたはステートメントオプションをODBCドライバがサポートしていない場合,動作は保証しません。なお,使用するODBCドライバによって,暗黙的にオプションが変更されることがあります。使用するODBCドライバが,この環境変数の指定で設定する接続オプションおよびステートメントオプションをサポートしているかどうかは,ODBCドライバ提供元のマニュアルなどを参照してください。