包中的Ssis错误无效列引用

时间:2014-06-27 12:35:46

标签: sql stored-procedures ssis

在使用case语句编辑我的存储过程后,我的sis包中的列引用错误无效,该语句从已支付金额添加了列总销售额。有人可以帮帮忙吗?除非我解决了错误,否则我无法重新映射包中的列。感谢

2 个答案:

答案 0 :(得分:3)

我在SSIS包中遇到了类似的问题。在我的源表中添加几个新列后," OLE DB源" element不会正确映射这些新列,也不会在映射列表中完全显示它们或显示"无效列"错误。 事实证明,我使用的连接将 RetainSameConnection 参数设置为 True (包使用不要删除的临时表) - 将其更改为错误使我能够将新列添加到映射中。 在连接到数据流的元素上检查 DelayValidation ValidateExternalMetadata 参数也是一个好主意。在这种情况下,这些应该设置为True。

也许有人遇到同样的问题。

答案 1 :(得分:0)

似乎发生了SSIS外部元数据刷新。如果更改SQL Server Integration Services(SSIS)程序包所依赖的基础查询,则会收到相同的消息。

您可以使用“还原无效列引用”编辑器来修复它。使用此对话框可以还原无效列引用的映射。将所有条目的Available Columns项设置为“”,然后单击OK。然后,您应该能够继续并重新映射源和目标之间的列。

如果您看不到“恢复无效列引用编辑器”,请按照以下步骤操作。

  1. 右键单击带有警告标志的框
  2. 选择“显示高级编辑器”
  3. 激活“列映射”
  4. 点击“刷新”
  5. 否则删除目标连接并从头开始重建。