問題タブ [query-timeout]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
452 参照

c++ - SQL Server データベースへの C++ の CDatabase ODBC 接続でクエリ タイムアウトを設定または無効にする方法

いくつかのコードでクエリを実行する必要があります。MSSMS でのクエリの実行には 1 分半かかります (4M 行を超える場合でも、それほど面倒ではありません)。コードでは、接続を開きます

その後、オブジェクトを作成CRecordsetしてクエリを実行できます。クエリはSELECT COUNT適切に機能します (最大 4M になります)。最初のSELECT colsクエリ (いくつかの属性をフェッチする) は正しく機能します。それぞれCRecordsetが適切に閉じられ、清掃されています。2 番目のSELECT colsクエリ (4M 行を返す大きな結合) は試行ごとにタイムアウトします。

クエリのタイムアウト値の設定方法、そのパラメーターの呼び出し方法、または最初に設定する場所がわかりません。接続文字列でパラメーターのさまざまな組み合わせを試し、ODBC パイロット プーリング オプションを編集してみました。別の ODBC 接続オブジェクトを使用することに興味はありませんが、直接接続文字列を使用する代わりに、DSN を設定してそれを介して接続できます。

最悪の場合はすべてページ付けしますが、今は面倒です。クエリがタイムアウトする可能性があるため、論理的にはそのタイムアウトも設定する方法があるはずです。それが何であるかを知りたいです。