gpt4 book ai didi

c# - SqlBulkCopy Close 方法会提交/处理外部事务吗?

转载 作者:行者123 更新时间:2023-11-30 21:55:09 25 4
gpt4 key购买 nike

我有一个 SQL 批量复制函数,它具有以下代码来创建批量复制实例。

 SqlBulkCopy bulkCopy = new SqlBulkCopy((SqlConnection) WorkConnection,
SqlBulkCopyOptions.FireTriggers, (SqlTransaction) WorkTransaction);

“WorkTransaction”是一个外部事务。它会发生什么

  1. 如果我们在 SqlBulkCopy 周围使用“using” block 。它会处理这个外部交易吗?
  2. 如果我们调用关闭函数(“bulkCopy.Close();”),它会提交/处理外部事务吗?

如有任何帮助,我们将不胜感激!

谢谢

最佳答案

没有。向 SqlBulkCopy 提供外部事务的目的是允许事务中包含其他操作,因此除非发生错误,否则 SqlBulkCopy 不会终止事务。

来自MS Doc :

You can specify an existing SqlTransaction object as a parameter in a SqlBulkCopy constructor. In this situation, the bulk copy operation is performed in an existing transaction, and no change is made to the transaction state (that is, it is neither committed nor aborted). This allows an application to include the bulk copy operation in a transaction with other database operations.

关于c# - SqlBulkCopy Close 方法会提交/处理外部事务吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32532112/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com