IRowsetFastLoad::Commit (Native Client OLE DB Provider)
適用於: SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics Analytics Platform System (PDW)
重要
SQL Server Native Client (通常縮寫為 SNAC) 已從 SQL Server 2022 (16.x) 和 SQL Server Management Studio 19 (SSMS) 中移除。 不建議使用 SQL Server Native Client OLE DB 提供者 (SQLNCLI 或 SQLNCLI11) 和舊版 Microsoft OLE DB Provider for SQL Server (SQLOLEDB) 進行新的開發。 請切換至新的 Microsoft OLE DB Driver (MSOLEDBSQL) for SQL Server 以繼續使用。
標示已插入之資料列批次的結尾,並將資料列寫入至 SQL Server 資料表。 如需範例,請參閱使用 IRowsetFastLoad 大量複製資料 (OLE DB) 和使用 IROWSETFASTLOAD 和 ISEQUENTIALSTREAM 將 BLOB 資料傳送到 SQL SERVER (OLE DB)。
語法
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 方法。