如果复制失败,我需要将数据从数据库“源”复制到数据库“目标”,我需要回滚“目标”。这两个连接在连接管理器中定义为 OLE DB。
这是我目前的尝试,但不起作用。我尝试使用内置的事务管理器(将任务事务设置为required),但这只会导致无法连接到“目的地”。
目的地已设置“RetainSameConnection”= true,而“源”则为 false,没有特殊原因。
我还设置了“MaxConcurrentExecutables”= 1 以阻止 SSIS 作为第一件事执行我的回滚。
序列中的每个任务都设置为“Isolation level”=ReadUncommitted 和“transactionOption”=supported。
“失败脚本”是一个总是失败的脚本,以便我测试事务是否正常工作。
任务“begin tran”的代码是“BEGIN TRANSACTION”,连接设置为“destination”
任务“rollback tran”的代码是“rollback transaction”,连接设置为“destination”
回滚失败,“回滚事务请求没有对应的‘BEGIN TRANSACTION’”