Programmgesteuertes Arbeiten mit Verbindungs-Managern
Gilt für: SQL Server SSIS Integration Runtime in Azure Data Factory
In Integration Services ist die AcquireConnection-Methode der zugehörigen Verbindungs-Manager-Klasse die Methode, die Sie am häufigsten aufrufen, wenn Sie mit Verbindungs-Managern in verwaltetem Code arbeiten. Wenn Sie verwaltete Codes schreiben, müssen Sie zur Verwendung der Funktionalität eines Verbindungs-Managers die AcquireConnection-Methode aufrufen. Sie müssen diese Methode unabhängig davon, ob Sie einen verwalteten Code in einem Skripttask, einer Skriptkomponente, einem benutzerdefinierten Objekt oder einer benutzerdefinierten Anwendung schreiben, aufrufen.
Um die Methode AcquireConnection erfolgreich aufrufen zu können, müssen folgende Fragen geklärt sein:
Welche Verbindungs-Manager geben ein verwaltetes Objekt über die AcquireConnection-Methode zurück?
Viele Verbindungs-Manager geben nicht verwaltete COM-Objekte (System.__ComObject) zurück, und diese Objekte können nicht ohne Weiteres aus verwalteten Codes verwendet werden. Zu diesen Verbindungs-Managern gehört der häufig verwendete OLE DB-Verbindungs-Manager.
Welche Objekte geben Verbindungs-Manager, die ein verwaltetes Objekt zurückgeben, über die AcquireConnection-Methoden zurück?
Um den Rückgabewert in den entsprechenden Typ umzuwandeln, müssen Sie wissen, welcher Objekttyp die AcquireConnection-Methode zurückgibt. Die AcquireConnection-Methode für den ADO.NET-Verbindungs-Manager gibt beispielsweise ein offenes SqlConnection-Objekt zurück, wenn Sie den SqlClient-Provider verwenden. Die AcquireConnection-Methode für den Dateiverbindungs-Manager gibt jedoch nur eine Zeichenfolge zurück.
In diesem Thema werden diese Fragen für die in Integration Services enthaltenen Verbindungs-Manager beantwortet.
Verbindungs-Manager, die kein verwaltetes Objekt zurückgeben
In der folgenden Tabelle werden die Verbindungs-Manager aufgelistet, die ein natives COM-Objekt (System.__ComObject) über die AcquireConnection-Methode zurückgeben. Diese nicht verwalteten Objekte können nicht ohne Weiteres in verwaltetem Code verwendet werden.
Typ des Verbindungs-Managers | Name des Verbindungs-Managers |
---|---|
ADO | ADO-Verbindungs-Manager |
MSOLAP90 | Analysis Services-Verbindungs-Manager |
EXCEL | Excel-Verbindungs-Manager |
FTP | FTP-Verbindungs-Manager |
HTTP | HTTP-Verbindungs-Manager |
ODBC | ODBC-Verbindungs-Manager |
OLEDB | OLE DB-Verbindungs-Manager |
Normalerweise können Sie einen ADO.NET-Verbindungs-Manager aus verwalteten Codes verwenden, um eine Verbindung mit einer ADO-, Excel-, ODBC- oder OLE DB-Datenquelle herzustellen.
Rückgabewerte von der AcquireConnection-Methode
In der folgenden Tabelle werden die Verbindungs-Manager aufgelistet, die ein verwaltetes Objekt über die AcquireConnection-Methode zurückgeben. Diese verwalteten Objekte können einfach in verwaltetem Code verwendet werden.
Typ des Verbindungs-Managers | Name des Verbindungs-Managers | Typ des Rückgabewerts | Zusätzliche Informationen |
---|---|---|---|
ADO.NET | ADO.NET-Verbindungs-Manager | System.Data.SqlClient.SqlConnection | |
FILE | Dateiverbindungs-Manager | System.String | Pfad zur Datei. |
FLATFILE | Verbindungs-Manager für Flatfiles | System.String | Pfad zur Datei. |
MSMQ | MSMQ-Verbindungs-Manager | System.Messaging.MessageQueue | |
MULTIFILE | Verbindungs-Manager für mehrere Dateien | System.String | Pfad zu einer der Dateien. |
MULTIFLATFILE | Verbindungs-Manager für mehrere Flatfiles | System.String | Pfad zu einer der Dateien. |
SMOServer | SMO-Verbindungs-Manager | Microsoft.SqlServer.Management.Smo.Server | |
SMTP | SMTP-Verbindungs-Manager | System.String | Beispiel: SmtpServer=<server name>;UseWindowsAuthentication=True;EnableSsl=False; |
WMI | WMI-Verbindungs-Manager | System.Management.ManagementScope | |
SQLMOBILE | SQL Server Compact Verbindungs-Manager | System.Data.SqlServerCe.SqlCeConnection |
Weitere Informationen
Herstellen einer Verbindung zu Datenquellen im Skripttask
Herstellen einer Verbindung zu Datenquellen in der Skriptkomponente
Herstellen einer Verbindung mit Datenquellen in einem benutzerdefinierten Task