Jet数据库引擎 - SSIS OLEDBERROR - 来自外部数据库驱动程序的意外错误(1)

时间:2017-10-13 05:34:34

标签: ssis excel-2003 oledbexception

由于以下SSIS错误

,我在DEV服务器中托管的SSIS作业失败
Error Code DTS_E_OLEDBERROR.  An OLE DB error has occurred. Error code: 0x80004005.
An OLE DB record is available.  Source: "Microsoft JET Database Engine"  Hresult: 0x80004005  Description: "Unexpected error from external database driver (1).".

在我的SSIS包中 - >数据流任务,我使用源作为SQL服务器,目标作为Excel。 Excel版本为97-2003(xls格式),连接详细信息为:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source={mypath}\filename.xls;Extended Properties="EXCEL 8.0;HDR=YES";

按计划每隔一小时成功运行一次。

  

当数据库实例停止进行Windows修补时出现问题   开始修补完成后

我在服务器中遇到此问题。我已经检查了Stack Overflow中的其他解决方案。它主要是以尺寸为基础进行讨论的。就我而言,SSIS工作从未改变。我相信这是由于Jet引擎驱动程序级别问题。我更喜欢驱动程序级别检查而不是ssis作业级别代码更改,因为代码从未更改,也没有发生大数据流。

6 个答案:

答案 0 :(得分:4)

在应用wsus更新后切换到群集的第二个节点后,我也一样。似乎与上次更新有关。

我已提交连接错误:https://connect.microsoft.com/SQLServer/feedback/details/3142556

刚刚卸载: KB 4040685(这也在我的工作站上) KB 4041693 KB 4041687

现在工作正常!

答案 1 :(得分:2)

同样在这里。将更新应用于服务器后,使用Excel 97 - 2003格式的程序包失败。

我们必须将每个连接切换到2007以使程序包能够在服务器上运行。

答案 2 :(得分:1)

建议的最佳解决方案是转移到Microsoft ACE OLE DB提供程序。

Microsoft正在制定解决方案,并将在即将发布的安全补丁中提供更新。预计这将在2-3周或更早的时间内提供。

More info...

答案 3 :(得分:0)

我安装了Access数据库引擎工具2010,之后我连接了2003年至2007年的Excelversion。然后我再次可以从XLS文件执行我的提取包,而不必卸载KB BR 安妮特

答案 4 :(得分:0)

从" Provider = Microsoft.Jet.OLEDB.4.0"更改每个数据源。 to" Provider = Microsoft.Jet.OLEDB.12.0"

安装更新时会出现此错误:KB4040685,KB4041693,KB4041687

答案 5 :(得分:0)

在我的情况下 - 我们有一堆软件包使用旧版本的Excel。 如果不通过SDLC流程,升级/修改包不是解决方案。

随着临时工作 - 我们卸载了安全补丁 - KB4041679& KB4041690和事情开始有效。

首先,我们卸载了KB 4040685并且问题仍然存在。

我们正在使用Microsoft Jet 4.0 OLE DB提供程序从Excel(.XLS)文件中读取数据。

谢谢, 斯