我创建了一个SSIS包。如果包失败,我需要将Transaction应用于此包以进行回滚。我发现的是一个属性“TransactionOption”,应该给出“Required”。我对吗 ?我已将包的TransactionOption设置为“必需”但是我执行时包失败。我应该做什么步骤来设置TransactionOption“必需”?
详细说明,我的包中包含4个控制任务。其中之一是数据流任务,包含查找任务。
我收到以下错误 “[执行SQL任务]错误:无法获取连接”SQLConnectionMgr1“。可能未正确配置连接,或者您可能没有此连接上的权限。”
当我将TransactionOption设置为“Supported”时,包会成功运行。
答案 0 :(得分:4)
在各自的执行SQL任务
上添加以下语句答案 1 :(得分:2)
听起来您可能没有适当的权限来使用在SSIS中使用事务所需的分布式事务处理协调器(MSDTC)服务。
有关更多信息,请参阅有关交易的这篇文章:http://www.mssqltips.com/tip.asp?tip=1585
此外,您可能需要更多地了解MSDTC如何与SSIS相关联以解决您的问题。
答案 2 :(得分:1)
要启用Trancaction,您需要检查以下precquiste
1,分布式事务协调器(MSDTC)服务应该在机器中启动,如果是本地机器的话。
2,如果您使用的是客户端(服务器计算机 - >用户计算机),则在两台计算机上启用MSDTC,并在组件服务下使用NETWORK DTC访问(允许远程客户端,允许入站,允许出站)安全选项 - - >计算机属性 - > MSDTC标签 - >安全选项
3,有时任何一台机器上的防火墙或两者都可以阻止网络DTC,因此您需要禁用/卸载。
错误: 无法获取连接管理器
解决方案: 如果您是本地计算机的用户,请检查步骤1,如果您是客户端用户检查步骤2和3
然后asusual 根据需要更改包级别或容器级别属性中所需的Trancaction Option并进行检查。