我有一个SQL批量复制功能,它有以下代码来创建批量复制实例。
SqlBulkCopy bulkCopy = new SqlBulkCopy((SqlConnection) WorkConnection,
SqlBulkCopyOptions.FireTriggers, (SqlTransaction) WorkTransaction);
" WorkTransaction"是外部交易。会发生什么
任何帮助将不胜感激!
由于
答案 0 :(得分:3)
没有。向SqlBulkCopy
提供外部事务的目的是允许其他操作包含在事务中,因此除非发生错误,否则SqlBulkCopy不会终止事务。
来自MS Doc:
您可以将现有的SqlTransaction对象指定为a中的参数 SqlBulkCopy构造函数。在这种情况下,批量复制操作是 在现有交易中执行,并且不对其进行任何更改 事务状态(即既未提交也未中止)。这个 允许应用程序在a中包含批量复制操作 与其他数据库操作的事务。