无法连接到Excel SSIS

9

我正在尝试创建一个数据流任务,将Excel文件中的数据导入到SQL表中。我是在Visual Studio 2012的SQL Server Data Tools中作为SSIS包进行操作的。 然而,当我运行任务时,我收到以下错误:

[Excel Source [52]] 错误: SSIS错误代码DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。使用连接管理器“Excel Connection Manager”调用AcquireConnection方法失败,错误代码为0xC0209303。在此之前可能已发布带有关于为什么AcquireConnection方法调用失败的更多信息的错误消息。

你能帮忙吗?

谢谢

完整的错误消息:

SSIS包“C:\Users\adm.turpan\Documents\Visual Studio 2012\Projects\Integration Services Project1\Integration Services Project1\project.dtsx”正在启动。信息:0x4004300A 在Excel作为源头,SSIS.Pipeline中:验证阶段正在开始。错误:0xC020801C 在Excel作为源头,Excel Source [52]:SSIS错误代码DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。使用连接管理器“Excel Connection Manager”调用AcquireConnection方法失败,错误代码为0xC0209303。在此之前可能已发布带有关于为什么AcquireConnection方法调用失败的更多信息的错误消息。错误:0xC0047017 在Excel作为源头,SSIS.Pipeline:Excel Source验证失败并返回错误代码0xC020801C。错误:0xC004700C 在Excel作为源头,SSIS.Pipeline:一个或多个组件验证失败。错误:0xC0024107 在Excel作为源头:任务验证期间出现错误。SSIS包“C:\Users\adm.turpan\Documents\Visual Studio 2012\Projects\Integration Services Project1\Integration Services Project1\project.dtsx”完成:成功。


验证错误也会出现在日志中。它们还会出现在数据流设计视图中的源和连接管理器上。 - Panagiotis Kanavos
这些都是日志中的错误。我已经检查了路径,它是正确的。 - Turpan
2
这个错误可能有几个原因,只有在查看完整的错误信息后,我们才能知道出了什么问题。暂时建议您尝试将run64BITRuntime更改为False,并将Delay validation设置为True。 - mehtat_90
嗨,mehtat_90,我在上方粘贴了完整的错误信息。 - Turpan
我找到了它,似乎解决了我的问题,尽管现在出现了不同的错误。我会尝试解决它们并让你知道。 - Turpan
显示剩余8条评论
3个回答

17

mehtat_90是正确的。 您需要将run64BitRuntime设置为False。请参见下面的位置:

项目 -> 属性 -> 输入图像描述


1
这修复了给出的错误;尽管我想知道为什么... 64位运行时与SSIS和Excel有什么问题?我最好的猜测是缺少驱动程序... 有人知道吗? - Mark
1
@Mark Excel提供程序不支持64位(或者至少曾经不支持)。 - Menno

1

对于那些之前的答案无效的人,也可以尝试这个方法。有时候当文件被打开时,它会在相同位置创建一个临时/隐藏文件,只有打开它的人才能看到。因此,在加载之前设置断点,并检查传递的“FileName”值。对于Excel,临时/隐藏文件将在thumb.db中,对于不同的文件格式则不同。希望这对某些人有所帮助。



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