【问题标题】:LineageID error for a LineageID that doesn't existLineageID 不存在的 LineageID 错误
【发布时间】:2016-04-07 13:56:41
【问题描述】:

我正在开发一个包含两个数据流元素的SSIS 包。在第一个中,我有一个OLE DB 源的 SQL 查询,我最终将其聚合并输入到缓存转换中。第二个具有相同的 SQL 查询,并在缓存上执行查找。但是每当我尝试运行/调试包时,我都会收到以下错误消息:

TITLE:包验证错误

包验证错误

------------------ 附加信息:

设置聚合信息缓存 [SSIS.Pipeline] 时出错:输入列 “MasterPolicyNumber” (50) 具有以前没有的沿袭 ID 161 在数据流任务中使用。

设置聚合信息缓存 [SSIS.Pipeline] 时出错:“组件 "聚合 1" (43)" 验证失败并返回验证状态 “VS_NEEDSNEWMETADATA”。

设置聚合信息缓存 [SSIS.Pipeline] 时出错:一个或多个 组件验证失败。

设置聚合信息缓存时出错:任务期间出现错误 验证。

(Microsoft.DataTransformationServices.VsIntegration)

当我查看包的控制流时,第一个数据流(“设置聚合信息缓存”)有红色 X 表示错误,但数据流中的单个组件没有,而且我'我搜索了我能找到的所有高级编辑器,但有问题的列MasterPolicyNumber 似乎在任何地方都没有 161 的 LineageID。任何有关如何纠正我做错的见解都将不胜感激!

【问题讨论】:

    标签: ssis


    【解决方案1】:

    “VS_NEEDSNEWMETADATA”表示从您第一次设计组件时架构已更改。再次打开该组件并重新映射/重新配置可用列。

    整个事情很棘手,没有人可以在这里帮助您,因为您需要实际操作组件并在设计模式下打开它们以刷新元数据。

    这有时在数据源和数据目的地中尤其痛苦,目的地是更严重的违规者,有时您只需要删除目的地并重新创建它。

    【讨论】:

    • 我仍然是 SSIS 的初学者 - 来自我如此诚实地使用 SAS 的工作,我不知道如何做到这一点,或者对它做什么(或者说实话,最你们刚才说的是偶数)。您所说的组件是指给我一个错误的特定转换吗?还是 OLE DB 源本身?
    • @GraceFix 我理解你的困惑,让我试着更好地解释一下。在数据流任务中,您有一个数据源对象和一个目标对象。如果您更改源本身中的列(例如编辑源文件或从数据库获取数据的查询),则转换的映射不再有效。打开转换重新映射列并保存 n' 祈祷 ;)
    • 在大多数情况下,只需查看您的映射并保存(确定您的更改)就足够了。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-06-10
    • 2011-10-03
    • 2013-01-14
    • 2014-05-15
    • 2013-02-22
    • 1970-01-01
    相关资源
    最近更新 更多