Freigeben über


DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER, wenn Sie Oracle Connection Manager verwenden

Dieser Artikel hilft Ihnen, das Problem zu beheben, das beim Verwenden des Oracle-Verbindungs-Managers auftritt.

Ursprüngliche Produktversion: SQL Server
Ursprüngliche KB-Nummer: 2009312

Problembeschreibung

Betrachten Sie das folgende Szenario für beide SQL Server:

  • Sie entwerfen ein SQL Server Integration Services (SSIS)-Paket mit Business Intelligence Development Studio (BIDS).
  • In Ihrem Paket stellen Sie eine Verbindung mit einem Oracle-Server mit einem OLEDB-Anbieter für Oracle her und verwenden entweder Oracle-Client 10G oder 11G.
  • Sie verwenden die Paketkonfigurationsdatei, um alle Verbindungseigenschaften für die Oracle-Verbindung zur Laufzeit festzulegen.

In diesem Szenario wird beim Ausführen des Pakets von BIDS die folgende Fehlermeldung angezeigt.

"Fehler: 0xC0202009 bei Package, Verbindungsmanager "OLEDB Provider": SSIS Error Code DTS_E_OLEDBERROR. OLE DB-Fehler. Fehlercode: 0x80040E21.

Ein OLE DB-Datensatz ist verfügbar. Quelle: "Microsoft OLE DB Service Components" Hresult: 0x80040E21 Beschreibung: "Multiple-Step OLE DB operation generated errors. Prüfen Sie die einzelnen OLE DB-Statuswerte, falls vorhanden. Es wurde keine Arbeit geleistet.".

Fehler: 0xC020801C bei Datenfluss Task, Oracle OLEDB Source [1]: SSIS Error Code DTS_E_CANNOTACQUIRECONNECTIONFROMCONNECTIONMANAGER. Fehler beim Aufruf der AcquireConnection-Methode an den Verbindungs-Manager "OLEDB Provider" mit Fehlercode 0xC0202009. Möglicherweise wurden bereits Fehlermeldungen veröffentlicht, die weitere Informationen zum Fehler beim Aufrufen der AcquireConnection-Methode beinhalten.

Fehler: 0xC0047017 bei Datenfluss Vorgang, DTS. Pipeline: Komponente "Oracle OLEDB Source" (1) fehlgeschlagene Überprüfung und zurückgegebener Fehlercode 0xC020801C."

Ursache

Dies liegt daran, dass die Eigenschaft "Initial Catalog " in der Konfigurationsdatei vom Oracle-Anbieter nicht erkannt wird. Dies ist für den Oracle Connection Manager in der Konfigurationsdatei leer.

Die folgende XML-Konfigurationsdatei wird beispielsweise generiert, wenn Sie BIDS verwenden, um ein SSIS-Paket zu erstellen, das eine Verbindung mit einem Oracle-Server herstellt:

<?xml version="1.0"?>
<DTSConfiguration>  
    <DTSConfigurationHeading>
        <DTSConfigurationFileInfo GeneratedBy="MyUserName" GeneratedFromPackageName="MyPackage" GeneratedFromPackageID="<guid>" GeneratedDate="2/22/2010 9:00:00 PM"/>
    </DTSConfigurationHeading>
    <Configuration ConfiguredType="Property" Path="\Package.Connections[MyConnectionManager].Properties[ConnectionString]" ValueType="String"> 
        <ConfiguredValue>Data Source=MyServerName;User ID=MyAccount;Password=MyPassword; **Initial Catalog=**; Provider=MSDAORA.1;Persist Security Info=True;</ConfiguredValue>
    </Configuration>
</DTSConfiguration>

Lösung

Entfernen Sie das Kontrollkästchen für den anfänglichen Katalog , wenn Sie die Konfigurationsdatei über den BIDS-Designer erstellen oder bearbeiten.

Die feste Version der Beispielkonfigurationsdatei, die im Abschnitt "Ursache" angezeigt wird, lautet z. B. wie folgt:

<?xml version="1.0"?>
<DTSConfiguration>  
    <DTSConfigurationHeading>
        <DTSConfigurationFileInfo GeneratedBy="MyUserName" GeneratedFromPackageName="MyPackage" GeneratedFromPackageID="<guid>" GeneratedDate="2/22/2010 9:00:00 PM"/>
    </DTSConfigurationHeading>
    <Configuration ConfiguredType="Property" Path="\Package.Connections[MyConnectionManager].Properties[ConnectionString]" ValueType="String">
        <ConfiguredValue>Data Source=MyServerName;User ID=MyAccount;Password=MyPassword;Provider=MSDAORA.1;Persist Security Info=True;</ConfiguredValue>
    </Configuration>
</DTSConfiguration>

Weitere Informationen

Bekannte Einschränkungen des OLE DB-Anbieters für ODBC