【问题标题】:Error when importing Excel in SSIS在 SSIS 中导入 Excel 时出错
【发布时间】:2018-01-30 05:05:16
【问题描述】:

我正在尝试通过 SSIS 将 Excel 工作表导入 SQL Server

该文件是由另一台机器的 SQL Server 导入任务生成的。

但是当我尝试在我的机器/服务器上运行 SSIS 时

我收到此错误

TITLE:包验证错误

包验证错误

附加信息:

数据流任务 1 [来源 - 'detail_report (4)$' [53]] 出错:SSIS 错误代码 DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER。这 AcquireConnection 方法调用连接管理器 “SourceConnectionExcel”失败,错误代码为 0xC0209302。也许有 在此之前发布错误消息,并提供有关原因的更多信息 AcquireConnection 方法调用失败。

数据流任务 1 [SSIS.Pipeline] 出错:来源 - 'detail_report (4)$'验证失败,返回错误码0xC020801C。

数据流任务 1 [SSIS.Pipeline] 出错:一个或多个组件 验证失败。

数据流任务 1 出错:任务验证期间出现错误。

MobUp02 [连接管理器“SourceConnectionExcel”] 出错: 请求的 OLE DB 提供程序 Microsoft.ACE.OLEDB.12.0 未注册。 如果未安装 32 位驱动程序,请在 64 位模式下运行该软件包。 错误代码:0x00000000。 OLE DB 记录可用。资源: "Microsoft OLE DB 服务组件" Hresult: 0x80040154 说明:“类未注册”。

MobUp02 [连接管理器“SourceConnectionExcel”] 出错: 'Microsoft.ACE.OLEDB.12.0' 提供程序未在本地注册 机器。有关详细信息,请参阅 http://go.microsoft.com/fwlink/?LinkId=219816

(Microsoft.DataTransformationServices.VsIntegration)

我用谷歌搜索并将 Run64bitRuntime 更改为 False,但问题仍然存在

有人知道怎么解决吗?

【问题讨论】:

  • 你试过了吗 -> Run64BitRuntime = False ?

标签: sql-server excel ssis oledb etl


【解决方案1】:

请求的 OLE DB 提供程序 Microsoft.ACE.OLEDB.12.0 未注册。

我认为您应该下载 Access Database Engine 2010 32 位:

其他信息

【讨论】:

  • 如果您必须经常这样做,最好将 64 位和 32 位文件都保留在本地。因为您最终将卸载并重新安装它们。根据这方面的经验相信我。
  • 我已经安装了 Access Database Engine 2010 64 位仍然是同样的问题,我无法安装 32 位我得到我的办公室是 64 位所以我必须先卸载我的办公室。
  • @asmgx 确定Run64BitRuntime = True,如果还是不行,试试我的回答
【解决方案2】:

您可以通过 2 个解决方法来解决使用 64 位 ms office 导入 excel:

  1. 使用 OLEDB 源而不是 Excel 源
  2. 使用 SQL Server 导入和导出向导

查看以下详细文章,它包含非常有用的信息:

【讨论】:

    【解决方案3】:

    尝试安装access runtime 2010,如果没有解决则access runtime 2007。它可能会解决您的错误。

    根据您的系统选择 32 位或 64 位。

    【讨论】:

      【解决方案4】:

      尝试检查以下内容:

      1. 服务器 BI 安装版本
      2. 在您的机器上安装相同的 Excel 版本
      3. 将 Excel 文件放在同一路径或更改 Excel 源文件路径与您的机器路径。

      【讨论】:

        【解决方案5】:

        在解决方案资源管理器窗口中选择项目(不是解决方案),然后从 Visual Studio 2019 菜单中选择:

        项目 -> 属性

        属性页窗口打开,然后选择:

        配置属性 -> 调试 -> 调试选项 -> Run64BitRuntime

        将该选项设置为 False,错误就会消失。它对我有用。

        【讨论】:

          【解决方案6】:

          因为我也遇到了这个问题,我通过安装这个“Microsoft Access Database Engine 2010”软件解决了这个问题 下面我附上链接以下载您需要在本地安装的软件以及运行该 SSIS 包的服务器 链接-Cick here to download Microsoft Access Database Engine 2010

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2023-01-23
            • 1970-01-01
            相关资源
            最近更新 更多