【问题标题】:Excel and 64 bitsExcel 和 64 位
【发布时间】:2012-03-09 17:28:49
【问题描述】:

我正在做一个带有一些 excel 连接的 SSIS 包。这是我的环境:

  • 已安装 Microsoft Office 2007
  • 已安装 Microsoft Office 2010
  • 已安装 SQL Server 2008 R2
  • 已安装 Visual Studio 2008
  • 已安装 Visual Studio 2010
  • 已安装 Microsoft Access 数据库引擎 2010 Redistributable

这是我到 excel 文件的连接字符串:

  • Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\XXXXX\XXXXX\XXXXX.xls;Extended Properties=EXCEL 14.0;HDR=YES";

所以,当我尝试部署我的 SSIS 包时,出现以下错误:

有一条 OLE DB 记录可用。来源:“Microsoft Access 数据库引擎”。 Hresult:0x8000040005 描述:“找不到可安装的 ISAM”

这很奇怪,因为之前我安装了 Microsoft Access Database Engine 2010 Redistributable,而且我同时拥有两个 Microsoft Office 版本...

任何帮助将不胜感激!

【问题讨论】:

    标签: sql-server database visual-studio-2008 ssis connection-string


    【解决方案1】:

    关于这件事有几个google结果,你试过了吗:http://support.microsoft.com/kb/209805

    还记得 Dtexec(用于运行 pacakges)同时具有 64 位和 32 位应用程序。如果您在 32 位环境中开发包并希望在 64 位环境中运行该包,则连接管理器需要兼容 64 位。某些连接管理器(例如 Excel)只能在 32 位环境中工作。

    【讨论】:

    • Dtexec 解决方案对执行 dtsx 包无效,因为我在 Sharepoint 内执行,所以我必须使用 app.LoadPackage (...)
    • 是的,但我相信当您调用 package.Execute() 时,它会调用 dtexec 来运行它
    猜你喜欢
    • 1970-01-01
    • 2010-09-25
    • 2017-03-26
    • 1970-01-01
    • 1970-01-01
    • 2019-07-09
    • 1970-01-01
    • 1970-01-01
    • 2013-03-24
    相关资源
    最近更新 更多