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 方法,才能以与使用 IRowsetUpdate::Update 方法将挂起行提交到 SQL Server 实例相同的方式将插入行写入 SQL Server 表。

如果使用者释放其对大容量复制行集的引用,而不调用 Commit 方法,则以前未写入的所有插入行将丢失。

通过在将 fDone 参数设置为 FALSE 的情况下调用 Commit 方法,使用者可以成批插入行。当 fDone 设置为 TRUE 时,行集变为无效。无效的大容量复制行集仅支持 ISupportErrorInfo 接口和 IRowsetFastLoad::Release 方法。

请参阅

其他资源