CDatabase::OnSetOptions
更新 : 2007 年 11 月
ExecuteSQL メンバ関数を使用して SQL ステートメントを直接実行しているときに、フレームワークによって呼び出されます。
virtual void OnSetOptions(
HSTMT hstmt
);
パラメータ
- hstmt
オプションが設定されている ODBC ステートメント ハンドル。
解説
CRecordset::OnSetOptions も、このメンバ関数を呼び出します。
OnSetOptions は、ログイン タイムアウト値を設定します。SetQueryTimeout とメンバ関数を前に呼び出している場合、OnSetOptions は現在の値を反映して値を設定します。それ以外の場合は、既定値を設定します。
メモ : |
---|
MFC 4.2 より前のバージョンでは、OnSetOptions は、処理モードも同期または非同期のいずれかに設定していました。MFC 4.2 以降のバージョンでは、すべての操作が同期モードで処理されます。非同期モードで操作を実行するには、ODBC API 関数の SQLSetPos を直接呼び出す必要があります。 |
タイムアウト値を変更する場合、OnSetOptions をオーバーライドする必要はありません。代わりに、レコードセットを作成する前に SetQueryTimeout を呼び出し、クエリのタイムアウト値をカスタマイズします。OnSetOptions は、新しく設定された値を使用します。この設定値は、すべてのレコードセットに対するその後の操作や、SQL の直接呼び出しに影響します。
追加のオプションを設定する場合は、OnSetOptions をオーバーライドします。オーバーライドする場合は、ODBC API 関数 SQLSetStmtOption を呼び出す前または後に、基本クラス OnSetOptions を呼び出す必要があります。フレームワークによる既定の OnSetOptions の実装方法に従ってください。
必要条件
ヘッダー : afxdb.h