旧的 SSIS 包无法读取 XLSX 文件 - XLS 读取正常

问题描述 投票:0回答:1

我被要求调查一下为什么通过 SQL Server 2012 运行的 SSIS 包无法正常工作。我打开包裹发现错误是由于无法读取

.xlsx
文件造成的。

作为测试,我手动打开该文件,将其另存为

.xls
文件,然后更改连接器以将其读取为 97-2003 excel 文件 - 并且工作正常。我将
.xls
重新保存为
.xlsx
(我想也许原来的版本已经损坏了),2007 年的连接再次失败。

查看错误日志,我看到一个错误:

Hresult:0x800004005 描述:“找不到可安装的 ISAM”

环顾四周,我没有找到太多运气。有谁知道这里的问题是什么?我验证了文件的权限是正确的,它没有被另一个进程锁定,路径是正确的。不知道我还能做什么。我猜这与使用 SQL Server 2012 运行此程序的过时服务器有关。

连接字符串为:

Provider=Microsoft.ACE.OLEDB.12.0;Data Source=\\<my server>\shared\<the folder>\<filename>.xlsx;Extended Properties="Excel 12.0 XML;HDR=NO";

sql-server ssis oledbconnection
1个回答
0
投票

解决方案是 ACE 可再发行组件已损坏或损坏。我什至无法卸载它,我必须通过添加/删除程序修复它,然后卸载它,然后下载最新的 32 位版本并安装,然后就修复了它。安装的版本似乎也与微软版本不匹配。

我从此处下载了 Microsoft Access Database Engine 2016 Redistributable:https://www.microsoft.com/en-us/download/details.aspx?id=54920

版本: RTM 发布日期: 2020 年 8 月 11 日

安装了32位版本。

© www.soinside.com 2019 - 2024. All rights reserved.