问题
We are facing below error after Microsoft's October patches applied on the server.
We have set Run64BitRunTime to false and DelayValidation to True and changed path of the excel folder. Still facing below issue.
Error: 0xC0202009 at SSIS_Document_Report, Connection manager "Excel Connection Manager": 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).".
Error: 0xC020801C at SSIS_Get_Document_Report, Excel Destination [436]: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER. The AcquireConnection method call to the connection manager "Excel Connection Manager" failed with error code 0xC0202009. There may be error messages posted before this with more information on why the AcquireConnection method call failed.
Error: 0xC0047017 at SSIS_Get_Document_Report, SSIS.Pipeline: component "Excel Destination" (436) failed validation and returned error code 0xC020801C.
Error: 0xC004700C at SSIS_Get_Document_Report, SSIS.Pipeline: One or more component failed validation.
Error: 0xC0024107 at SSIS_Get_Document_Report: There were errors during task validation.
Warning: 0x80019002 at SSIS_Document_Report: SSIS Warning Code DTS_W_MAXIMUMERRORCOUNTREACHED. The Execution method succeeded, but the number of errors raised (5) reached the maximum allowed (1); resulting in failure. This occurs when the number of errors reaches the number specified in MaximumErrorCount. Change the MaximumErrorCount or fix the errors.
SSIS package "SSIS_Document_Report.dtsx" finished: Failure.
Workaround from below link resolved this issue in local machines. But In UAT server, it is not working as expected. And the reason could be below highlighted info from the link. Any suggestion on how to implement this bold highlighted? https://www.microsoft.com/en-us/download/details.aspx?id=13255
To transfer data between supported file formats and a database repository, such as SQL Server. For example, to transfer data from an Excel workbook into SQL Server using the SQL Server Import and Export Wizard or SQL Server Integration Services (provided the SSIS jobs run in the context of a logged-on user with a valid HKEY_CURRENT_USER registry hive).
回答1:
The reason for this is few security patches released by Microsoft this month. To be precise they are KB4041693 & KB4041687.
It started working for me when I removed these patches. but this is not recommended solution.
See other solutions as well discussed in following threads
"Unexpected error from external database driver (1). (Microsoft JET Database Engine)” after applying October security updates
ODBC Excel Driver Stopped Working with "Unexpected error from external database driver (1). (Microsoft JET Database Engine)"
回答2:
The solution we are implementing is opening the SSIS package and changing the version of excel file the connection manager produces to anything besides 97-03. You will have to download and install the Microsoft.ACE.OLEDB.12.0 connector for 07-2010 and Microsoft.ACE.OLEDB.16.0 for anything newer.
来源:https://stackoverflow.com/questions/46903444/ssis-2008-r2-excel-connection-manager-failed-with-error-code-0xc0202009