次の方法で共有


レコードセット : レコードを大量に追加する方法 (ODBC)

更新 : 2007 年 11 月

このトピックの内容は、MFC ODBC クラスに該当します。

MFC CRecordset クラスには最適化機能が組み込まれているため、大量の新しいレコードを効率的にテーブルに追加できます。

t9c513xf.alert_note(ja-jp,VS.90).gifメモ :

このトピックの内容は、バルク行フェッチが実装されていない CRecordset の派生オブジェクトを対象にしています。バルク行フェッチを使用する場合は、「レコードセット : バルク行フェッチ (ODBC)」を参照してください。

CRecordset::Open メンバ関数の dwOptions パラメータには、新しいオプションとして optimizeBulkAdd があります。このオプションを使うと、RequeryClose を呼び出さずに、複数のレコードを連続して効率的に追加できます。最初の Update 呼び出しの前からダーティなフィールドだけが、以降の AddNew または Update の呼び出しでもダーティとしてマークされます。

レコードを追加、編集、削除するときに、データベース クラスを通じて ODBC API 関数 ::SQLSetPos を使う場合は、この最適化処理は不要です。

ODBC カーソル ライブラリを読み込んでいる場合、または ODBC ドライバが ::SQLSetPos による追加、編集、および削除をサポートしていない場合は、この最適化処理によって大量のレコードを効率的に追加できます。この最適化処理を有効にするには、レコードセットの Open 呼び出しの dwOptions パラメータを次のように設定します。

appendOnly | optimizeBulkAdd

参照

概念

レコードセット (ODBC)

レコードセット : レコードの追加、更新、削除 (ODBC)

レコードセット : レコードのロック (ODBC)