Ich arbeite an einem SSIS-Paket, das eine Verbindung zum Server herstellt und Daten in eine Excel-Datei speichert und diese Excel-Datei dann per E-Mail an den Client sendet. Ich verwende ADO.net (Provider:. Net Providers \ Odbc Data Provider) -Treiber, um eine Verbindung mit Server herzustellen, und das 64-Bit- und Excel-Ziel ist, um die Datei auf meinem lokalen zu verbinden. Wenn ich das Paket in meinem SSDT mit der Eigenschaft Run64BitRUNtime = true
ausführen, erhalte ich folgenden Fehler.SSIS: Zwei verschiedene Fehler bei verschiedenen Treibern. Einer ist 32 Bit und ein anderer ist 64 Bit. Das Ausführen in 32 Bit führt dazu, dass ein anderer Treiber fehlschlägt
Source: CFEReport Connection manager "Excel Connection Manager" Description: The requested OLE DB provider Microsoft.Jet.OLEDB.4.0 is not registered. If the 64-bit driver is not installed, run the package in 32-bit mode. Error code: 0x00000000. An OLE DB record is available. Source: "Microsoft OLE DB Service Components" Hresult: 0x80040154 Description: "Class not registered". End Error Error: 2016-06-17 13:27:56.81 Code: 0xC020801C Source: CFE Report Generation Excel Destination [32] Description: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER. The AcquireConnection method call to the connection manager "Excel Connection Manager" failed with error code 0xC0209303. There may be error messages posted before this with more information on why the AcquireConnection method call failed. End Error Error: 2016-06-17 13:27:56.82 Code: 0xC0047017 Source: CFE Report Generation SSIS.Pipeline Description: Excel Destination failed validation and returned error code 0xC020801C. End Error Error: 2016-06-17 13:27:56.82 Code: 0xC004700C Source: CFE Report Generation SSIS.Pipeline Description: One or more component failed validation. End Error Error: 2016-06-17 13:27:56.82 Code: 0xC0024107 Source: CFE Report Generation Description: There were errors during task validation.
Also suchte ich über das Internet und finden, dass ich Run64BitRUNtime = false
diese Eigenschaft sollte und es in 32-Bit laufen. Ich versuche das und ich kann es erfolgreich ausführen. Aber als ich versuchte, es in SQL Server 2012 als Erstellen von Job auszuführen und es täglich auszuführen, erhalte ich folgenden Fehler. (Ich habe auch die Eigenschaft in SQL Job durch Überprüfung Use 32 Bit runtime
Option in Ausführung Option in 32-Bit-Umgebung ausgeführt werden)
Microsoft (R) SQL Server Execute Package Utility Version 11.0.6020.0 for 32-bit Copyright (C) Microsoft Corporation. All rights reserved. Started: 1:19:17 PM Error: 2016-06-17 13:19:17.98 Code: 0xC0208449 Source: CFE Report Generation RAR TableQuery [93] Description: ADO NET Source has failed to acquire the connection {F2DAE648-B39C-4F43-8EBE-BBA6E11EC7AA} with the following error message: "ERROR [IM014] [Microsoft][ODBC Driver Manager] The specified DSN contains an architecture mismatch between the Driver and Application". End Error Error: 2016-06-17 13:19:17.98 Code: 0xC0047017 Source: CFE Report Generation SSIS.Pipeline Description: RAR TableQuery failed validation and returned error code 0xC0208449. End Error Error: 2016-06-17 13:19:17.98 Code: 0xC004700C Source: CFE Report Generation SSIS.Pipeline Description: One or more component failed validation. End Error Error: 2016-06-17 13:19:17.98 Code: 0xC0024107 Source: CFE Report Generation Description: There were errors during task validation. End Error DTExec: The package execution returned DTSER_FAILURE (1). Started: 1:19:17 PM Finished: 1:19:17 PM Elapsed: 0.78 seconds. The package execution failed. The step failed.
Können Sie mir helfen, dieses Problem zu lösen? Vielen Dank im Voraus Ich möchte dieses Paket in 64 Bit ausführen, was ich tun soll, um es zu verwenden.
Danke. Ich habe 64 Bit von MS Access Database Engine 2010 Redistributable auf dem Server installiert. Ich öffne mein SSIS-Paket in SSDT und versuche es erneut mit Excel. Wenn ich es in 32bit (Run64BitRUNtime = false) dann läuft es funktioniert sonst gibt es mir den gleichen Fehler. Jetzt teile ich Paket in zwei Teile (eine in RAW-Datei und eine andere RAW-Datei in Excel) und es funktioniert, indem ein Paket in 32 Bit und ein anderes in 64bit – Mytroy2050