SSIS TransactionOption必需导致错误(所有在本地计算机上)

时间:2012-10-10 08:11:45

标签: transactions ssis distributed-transactions

我看过一些与我的问题有关的帖子,但有太多的maybes促使我要求更直接的解决方案。

我正在做的一切都在我的本地机器上,虽然我在一个域名上。

当我将包的事务选项设置为required(以及其他所有内容支持)时,我的包不再执行(在BIDS 2008中)。我有以下错误消息:

无法获取外部列的属性。您输入的表名可能不存在,或者您对表对象没有SELECT权限,并且通过连接获取列属性的替代尝试失败。

详细的错误消息是: 超时已过期。操作完成之前经过的超时时间或服务器没有响应。 通过查询System.Data.SqlClient.SqlConnection,找不到表[tablename]的列信息。

错误:导入模数检查时出现0xC004706B,SSIS.Pipeline:“组件”ADO NET目标“(381)”验证失败并返回验证状态“VS_ISBROKEN”。

错误:导入模数检查时出现0xC004700C,SSIS.Pipeline:一个或多个组件验证失败。

错误:导入模数检查时出现0xC0024107:任务验证期间出错。

我确保分布式事务处理协调器服务已经启动,但我对配置选项并不十分了解,所以我怀疑这就是我的问题所在。

是否有人确切知道如何配置它以使其在我的本地计算机上运行?提前谢谢!

1 个答案:

答案 0 :(得分:5)

事实证明,并发症是由交易中的TRUNCATE命令引起的。如果您遇到同样的问题,那么您需要做的就是在所有数据连接上(在事务内)将ValidateExternalMetadata设置为false,或者使用DELETE命令。