我正在开发一个包含两个数据流元素的SSIS
包。在第一个中,我有一个OLE DB
源的SQL查询,我最终聚合并提供给缓存转换。第二个具有相同的SQL查询,并在缓存上执行查找。但每当我尝试运行/调试包时,我都会收到以下错误消息:
包验证错误
------------------------------附加信息:
设置聚合信息缓存[SSIS.Pipeline]时出错:输入列 “MasterPolicyNumber”(50)具有以前不是的谱系ID 161 在数据流任务中使用。
设置聚合信息缓存[SSIS.Pipeline]时出错:“组件 “Aggregate 1”(43)“验证失败并返回验证状态 “VS_NEEDSNEWMETADATA”。
设置聚合信息缓存[SSIS.Pipeline]时出错:一个或多个 组件验证失败。
设置聚合信息缓存时出错:任务期间出错 验证
(Microsoft.DataTransformationServices.VsIntegration)
当我查看软件包的控制流时,第一个数据流(“设置聚合信息缓存”)的红色X表示错误,但数据流中没有单独的组件,而且我搜索了所有可以找到的高级编辑器,但是有问题的专栏MasterPolicyNumber
似乎没有任何地方的LineageID为161。任何有关如何纠正我做错的任何见解都将非常感激!
答案 0 :(得分:1)
“VS_NEEDSNEWMETADATA”表示架构自首次设计组件时发生了更改。再次打开该组件并重新映射/重新配置可用列。
整件事情很棘手,没有人能够在这里帮助你,因为你需要实际操作组件并在设计模式下打开它们以便元数据刷新。
有时在数据源和数据目的地中这是特别痛苦的,目的地是更糟糕的罪犯,有时您只需要删除目的地并重新创建它。