挿入された行のバッチの末尾をマークし、SQL Server テーブルに行を書き込みます。 サンプルについては、「 IRowsetFastLoad (OLE DB) を使用してデータを一括コピーする」 と「 IROWSETFASTLOAD と ISEQUENTIALSTREAM (OLE DB) を使用して SQL SERVER に BLOB データを送信する」を参照してください。
構文
HRESULT Commit(
BOOL
fDone
);
論争
fDone[in]
FALSE の場合、行セットは有効性を維持し、コンシューマーが追加の行挿入に使用できます。 TRUE の場合、行セットは有効性を失い、コンシューマーがそれ以上挿入することはできません。
リターン コードの値
S_OK
メソッドが成功し、挿入されたすべてのデータが SQL Server テーブルに書き込まれます。
E_FAIL
プロバイダー固有のエラーが発生しました。 プロバイダーから特定のエラー テキストのエラー情報を取得します。
予期しないエラー
このメソッドは、以前 に IRowsetFastLoad::Commit メソッドによって無効化された一括コピー行セットで呼び出されました。
注釈
SQL Server Native Client OLE DB プロバイダーの一括コピー行セットは、遅延更新モードの行セットとして動作します。 ユーザーが行セットを介して行データを挿入すると、挿入された行は 、IRowsetUpdate をサポートする行セットに対する保留中の挿入と同じ方法で処理されます。
コンシューマーは、IRowsetUpdate::Update メソッドを使用して保留中の行を SQL Server のインスタンスに送信する場合と同じ方法で、挿入された行を SQL Server テーブルに書き込むには、一括コピー行セットの Commit メソッドを呼び出す必要があります。
コンシューマーが Commit メソッドを呼び出さずに一括コピー行セットの参照を解放すると、以前に書き込まれていない挿入された行はすべて失われます。
コンシューマーは、fDone 引数を FALSE に設定して Commit メソッドを呼び出すことによって、挿入された行をバッチ処理できます。 fDoneを TRUE に設定すると、行セットが無効になります。 無効な一括コピー行セットでは、 ISupportErrorInfo インターフェイスと IRowsetFastLoad::Release メソッドのみがサポートされます。