共用方式為


IRowsetFastLoad::Commit (OLE DB)

標示已插入之資料列批次的結尾,並將資料列寫入 SQL Server 資料表。

語法

HRESULT Commit(
      BOOL fDone);

引數

  • fDone[in]
    如果為 FALSE,此資料列集就會維持有效性,而且可供取用者用於其他資料列插入作業。如果為 TRUE,此資料列集就會喪失有效性,而且取用者無法完成其他插入作業。

傳回碼值

  • S_OK
    此方法已成功,而且所有插入的資料都已經寫入 SQL Server 資料表中。

  • E_FAIL
    發生了提供者特有的錯誤。請從提供者中擷取特定錯誤文字的錯誤資訊。

  • E_UNEXPECTED
    這個方法是在先前已藉由 IRowsetFastLoad::Commit 方法設為無效之大量複製資料列集上呼叫。

備註

SQL Server Native Client OLE DB 提供者大量複製資料列集的行為就如同延遲更新模式的資料列集。因為使用者會透過資料列集插入資料列的資料,所以插入的資料列會以相同的方式被視為支援 IRowsetUpdate 之資料列集上的暫止插入。

取用者必須針對大量複製資料列集呼叫 Commit 方法,才能將插入的資料列寫入 SQL Server 資料表中,其方式就如同使用 IRowsetUpdate::Update 方法,將暫止資料列提交給 SQL Server 執行個體。

如果取用者釋放大量複製資料列集的參考,而沒有呼叫 Commit 方法,所有先前並未寫入的已插入資料列都會遺失。

取用者可以呼叫 Commit 方法,並將 fDone 引數設定為 FALSE,藉以批次處理插入的資料列。當 fDone 設定為 TRUE 時,此資料列集就會成為無效。無效的大量複製資料列集僅支援 ISupportErrorInfo 介面和 IRowsetFastLoad::Release 方法。

請參閱

其他資源