【问题标题】:SSIS Executing package failedSSIS 执行包失败
【发布时间】:2019-03-30 06:37:11
【问题描述】:

我创建了一个 SSIS 包,它从数据库中获取数据并将其写入 Excel 电子表格。一切都在 Azure VM 上完成。从 Visual Studio 运行时一切正常。然后我部署了包并尝试从集成服务目录执行。我收到错误:

...

数据流任务:错误:Excel 目标验证失败并返回错误代码 0xC020801C。

数据流任务:错误:SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。对连接管理器“Excel 连接管理器”的 AcquireConnection 方法调用失败,错误代码为 0XC0209303...

包:错误:“Microsoft.ACE.OLEDB.12.0”提供程序未在本地计算机上注册。欲了解更多信息,请参阅https://go.microsoft.com/fwlink/?LinkId=219816

包:错误:请求的 OLE DB 提供程序 Microsoft.ACE.OLEDB.12.0 未注册。如果未安装 64 位驱动程序,请在 32 位模式下运行该软件包。错误代码:0x00000000。 OLE DB 记录可用。来源:“Microsoft OLE DB 组件”Hresult:0x80040154 描述:“类未注册”。

我确实按照上面 Microsoft 页面中的建议安装了 Access Database Engine。

谢谢。

【问题讨论】:

    标签: excel ssis


    【解决方案1】:

    当您从 SSIS 目录执行包时,您是否将其设置为在 32 位运行时中运行?您安装的是 64 位还是 32 位版本的 Access 数据库引擎?需要使用 32 位 版本。如果之前安装了 64 位版本,则需要先将其卸载,因为两者不能共存。然后可以安装 32 位版本的 Access 数据库引擎。

    【讨论】:

    • 感谢您的回答。我会尝试并告诉你。
    • 请问,如何将其设置为在 32 位运行时运行? “验证”有一个对应的复选框,当我选中它时,它通过了验证。但我在“执行”上没有看到这样的选项......
    • 在“执行包”窗口中,转到“高级”选项卡,您将看到 32 位运行时复选框。
    猜你喜欢
    • 2016-08-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多