【问题标题】:SSIS and 64bit excelSSIS 和 64 位 Excel
【发布时间】:2014-03-14 12:23:33
【问题描述】:

我对此进行了彻底的研究,但我还没有找到满意的答案。

我正在使用 SQL Server Data Tools 2010 和 Microsoft Office 2013 64 位。我知道存在兼容性问题,我正在尝试解决它,因为我知道您可以将 .xlsx 文件用作数据流中的数据源。

首先我尝试在 Project -> Properties -> Configuration Properties -> Debugging 中将 Run64BitRuntime 设置为 False,但没有成功

每当我尝试导入 .xlsx 文件时,都会遇到同样的错误

 Microsoft Visual Studio
------------------------------

Could not retrieve the table information for the connection manager
'Source Path'. Failed to connect to the source using the connection
manager 'Source Path'

------------------------------ 

所以我尝试按照许多人的建议下载“Microsoft Access 数据库引擎 2010”。 64位安装成功但32位返回如下错误

You cannot install the 32-bit version of Microsoft Access database engine 2010
because you currently have 64-bit Office products installed.

现在我知道我在这里遗漏了一个步骤,因为我可以在控制面板的已安装程序列表中看到“Microsoft Access 数据库引擎 2010”,但当我尝试创建一个新的连接管理器。

所以在我按照blog 的说明进行操作之前,我想确保没有更简单的方法可以解决问题

提前感谢您的宝贵时间。

【问题讨论】:

  • 因为 Visual Studio 是 32 位的,所以您需要 32 位的 office/excel 驱动程序。而且因为您不能同时安装 32 位和 64 位驱动程序,所以您遇到了问题。解决方案: - 使用常规的 32 位 office(或者最好不要在装有 SQL Server 的机器上使用 office) - 不要在 SSIS 中使用 excel 作为源。

标签: excel visual-studio-2010 ssis


【解决方案1】:

如果您的机器是 x64,请忘记 Excel,因为没有可用的驱动程序。 只需将文件转换为 CSV 并改用平面文件连接器。

【讨论】:

    【解决方案2】:

    好的,答案非常简单,以至于我现在为这篇文章感到羞耻。

    如果您使用的是 Microsoft Office 2013 64 位并希望使用 SSIS,您必须下载并安装 32 位 Microsoft Access Database Engine 2010 Redistributable,而不是 64 位,请将 Run64BitRuntime 设置为 False一切都会像魅力一样发挥作用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-09-25
      • 1970-01-01
      • 2017-03-26
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多