使用SSIS加载.xlsb文件时,连接管理器引发异常

时间:2019-07-09 09:17:19

标签: sql-server excel ssis etl ssis-2017

我有一个.XLSB文件(使用Office 2016创建的MS excel二进制工作表),具有超过一百万条记录。如何使用SSIS加载此文件? 我在两台不同的PC上都有SQL Server 2014和SSDT 2012&SQL Server 2017 SSDT 2017。

问题是:在SSIS中,我使用的是excel source,连接管理器为excel,excel表的名称没有出现。说,不能加载任何表或视图。但是,我的excel中有工作表。

  

无法检索连接管理器“ Excel Connection Manager”的表信息。   使用连接管理器“ Excel Connection Manager”无法连接到源

编辑更多错误信息

enter image description here

按此方法:Accessing Excel 2007 Binary (.xlsb) via OleDb ACE安装了访问(2016)引擎。但是,仍然有问题。

可能是什么问题?任何链接会有所帮助吗?谢谢。

2 个答案:

答案 0 :(得分:1)

根据您的问题,您有两个问题:

  1. Access数据库引擎未注册错误
  2. 使用SSIS读取Xlsb文件格式

Access Database Engine未注册错误

您可以参考以下链接,以获取有关如何解决类似问题的更多信息:

使用SSIS读取Xlsb文件格式

首先必须从Excel连接管理器中选择一个普通的Excel文件(手动创建),然后从ExcelFilePath属性中将其更改为.xlsb路径;

替代品

  1. 使用互操作库从Excel中读取:

  2. 使用第三方库从Excel中读取:

  3. 使用 OpenXml库

  4. 转换为csv文件

答案 1 :(得分:0)

安装Microsoft.ACE.OLEDB.12.0 32位提供程序。然后转到项目属性->配置属性->调试->设置Run64BitRuntime = False。

enter image description here

单击图像以查看有关连接属性和文件扩展名的详细信息 enter image description here