由于我不得不重新安装我的开发PC,我现在在加载已保存的SSIS项目或在Visual Studio 2012中创建新项目时遇到一些问题。
尝试使用Excel连接创建为97-2003格式的.xls文件时,收到以下错误:
无法检索连接管理器&Excel连接管理器'的表信息。 无法使用连接管理器连接到源' Excel连接管理器'
经过一些实验,如果发现.xlsx文件正常工作,并且在我将ECM设置为MS Excel 2007时可以读取.xls文件的表格。
事实上,我不是唯一一个更新这些程序的人,而且在我的备份笔记本上,他们仍然按照预期的方式使用Excel版本3(97-2003),与文件相同。因此,当我将程序更新到Excel版本4以使其在PC上运行时,它对所有其他程序都无效。
感谢任何帮助解决此问题。
设置信息(与PC和笔记本相同的基本设置):
Win10 x64,Office 2013 x86,SQL Server数据工具2012(x86), 在PC上:还为Office 2010,2007安装了Access数据库引擎
答案 0 :(得分:0)
此问题是由Windows更新 KB4041678 (仅安全更新)或 KB4041681 (每月汇总)引起的。在我们的案例中,它是KB4041687。由于此更新,我们有许多SSIS软件包失败,一旦实施了以下解决方案,SSIS软件包就会备份并运行。
这些更新的已知问题包括:
"安装此更新可能会导致基于Microsoft JET数据库引擎(Microsoft Access 2007和旧版或非Microsoft应用程序)的应用程序在创建或打开Microsoft Excel .xls文件时失败。错误消息是“外部数据库驱动程序(1)发生意外错误”。 (Microsoft JET数据库引擎)"。"
Microsoft正在制定解决方案,并将在即将发布的版本中提供更新。
推荐的工作是下载并安装" Microsoft Access Database Engine 2010 Redistribute"
根据安装说明("要使用此下载"),安装Access数据库引擎后,您需要从Provider = Microsoft.Jet.OLEDB更新Excel连接管理器ConnectionString提供程序.4.0到Provider = Microsoft.ACE.OLEDB.12.0。
例如,之前
Provider = Microsoft.Jet.OLEDB.4.0 ;数据源= D:\ Scatch \ test.xls;扩展属性=&#34; EXCEL 8.0; HDR = YES&#34 ;; < / p>
在
Provider = Microsoft.ACE.OLEDB.12.0 ;数据源= D:\ Scatch \ test.xls;扩展属性=&#34; EXCEL 8.0; HDR = YES&#34 ;; < / p>