SSIS错误:[SSIS.Pipeline] 错误:“组件“Excel Source”(14)”未通过验证,返回验证状态“VS_NEEDSNEWMETADATA”。

4
我已经查看了这个网址:如何使用SSIS包循环遍历Excel文件并将它们加载到数据库中,我按照里面提到的步骤操作,但是我收到了以下警告:
[Excel Source [14]] Warning: The external columns for component 
"Excel Source" (14) are out of synchronization with the data source 
columns. The column "state" needs to be added to the external columns.
The external column "state " (27) needs to be removed from the external 
columns.

并且出现了这个错误:
[SSIS.Pipeline] Error: "component "Excel Source" (14)" failed validation 
and returned    validation status "VS_NEEDSNEWMETADATA".
6个回答

4
我发现,在遇到这个错误时,有时仅需双击每个组件,查看列和各种转换,然后按“确定”即可解决。然后保存并重新运行,就可以正常工作了。确保没有红色的X或其他警告存在。

不反驳您的观点。您的回答有点试错性质。但是,谁在未来看到这篇帖子,请参考@Maverick的检查点。它有助于解决问题。 - knkarthick24

2
这个错误的原因是元数据有变化,例如在我的情况下,Excel源中的列名已经改名了。请检查Excel的列名和相应的映射关系。翻译成中文为:

这个错误的原因是元数据发生了变化,在我的情况下是Excel源中的一个列名被重命名了。请验证Excel的列名和相应的映射。


1
当您使用Excel时,可能会遇到与Excel源的问题。以下是一些避免此类问题的步骤: 1)确保获取Excel连接,并不更改Excel文件连接字符串或文件夹(物理上不要移动文件) 2)检查红叉(X),如果看到它,请定位Excel文件源中的箭头,它将显示错误代码。 3)打开Excel源并检查列和预览 4)点击确定
注意:您不应该有红叉(X)。

非常感谢您的评论。1)请确保您获取了Excel连接,并且不要更改Excel文件的连接字符串或文件夹(物理上不要移动文件)。当我这样做时,它就像魔术般地运行。我更改了Excel文件,并且还更改了连接管理器字符串以使其正常工作。 - knkarthick24

1
该列的名称不同。在名称“state”和“state ”中有一个空格。而且大小写也很敏感。

0

从Excel源中删除未使用或空白的工作表,然后尝试重新执行包。


0

这种情况发生在您在开发过程中预定义的连接管理器中更改了 Excel 文件。如果您想更改 Excel 文件,请确保您也在 Excel 连接管理器中进行更改(即使您已配置使用其他名称)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接