Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für: SQL Server
SSIS Integration Runtime in Azure Data Factory
Verbindungs-Manager bieten Zugriff auf Datenquellen, die im Paket konfiguriert wurden. Weitere Informationen finden Sie unter Integration Services-Verbindungen (SSIS).
Der Skripttask kann auf diese Verbindungs-Manager über die Connections-Eigenschaft des Dts-Objekts zugreifen. Jeder Verbindungs-Manager in der Connections-Auflistung speichert Informationen darüber, wie eine Verbindung mit der zugrunde liegenden Datenquelle hergestellt werden kann.
Wenn Sie die AcquireConnection-Methode eines Verbindungs-Managers aufrufen, stellt der Verbindungs-Manager eine Verbindung zur Datenquelle her (falls diese nicht bereits besteht), und gibt die entsprechenden Verbindungsinformationen zur Verwendung im Skripttaskcode zurück.
Hinweis
Der Verbindungstyp, der vom Verbindungs-Manager zurückgegeben wird, muss bekannt sein, bevor Sie AcquireConnection aufrufen. Da für den Skripttask Option Strict aktiviert ist, müssen Sie die Verbindung, die als Object-Typ zurückgegeben wird, vor ihrer Verwendung in den richtigen Verbindungstyp umwandeln.
Sie können die Contains-Methode der Connections-Auflistung verwenden, die von der Connections-Eigenschaft zurückgegeben wird, um nach einer vorhandenen Verbindung zu suchen, bevor Sie diese Verbindung im Code verwenden.
Wichtig
Sie können die AcquireConnection-Methode von Verbindungs-Managern, die nicht verwaltete Objekte zurückgeben (z.B. der OLE DB-Verbindungs-Manager und der Excel-Verbindungs-Manager) nicht im verwalteten Code eines Skripttasks aufrufen. Sie können jedoch die ConnectionString-Eigenschaft dieser Verbindungs-Manager lesen und mithilfe der Verbindungszeichenfolge einer OledbConnection aus dem System.Data.OleDb-Namespace direkt im Code eine Verbindung mit der Datenquelle herstellen.
Wenn Sie die AcquireConnection-Methode eines Verbindungs-Managers aufrufen müssen, der nicht verwaltete Objekte zurückgibt, verwenden Sie einen ADO.NET-Verbindungs-Manager. Wenn Sie den ADO.NET-Verbindungs-Manager zur Verwendung eines OLE DB-Anbieters konfigurieren, stellt er über den .NET Framework-Datenanbieter für OLE DB eine Verbindung her. In diesem Fall gibt die AcquireConnection-Methode ein System.Data.OleDb.OleDbConnection-Objekt anstelle eines nicht verwalteten Objekts zurück. Zur Konfiguration eines ADO.NET-Verbindungs-Managers zur Verwendung mit einer Excel-Datenquelle wählen Sie den Microsoft OLE DB-Anbieter für Jet aus, geben eine Excel-Datei an und geben dann Excel 8.0
(für Excel 97 und höher) als Wert für Erweiterte Eigenschaften auf der Seite Alle des Dialogfelds Verbindungs-Manager ein.
Verbindungsbeispiel
Im folgenden Beispiel wird veranschaulicht, wie Verbindungs-Manager innerhalb des Skripttasks aufgerufen werden können. In diesem Beispiel wird davon ausgegangen, dass Sie einen ADO.NET-Verbindungs-Manager namens Test ADO.NET Connection und einen Verbindungs-Manager für Flatfiles namens Test Flat File Connection erstellt und konfiguriert haben. Beachten Sie, dass der ADO.NET-Verbindungs-Manager ein SqlConnection-Objekt zurückgibt, das Sie sofort zur Verbindung mit der Datenquelle verwenden können. Der Verbindungs-Manager für Flatfiles gibt im Gegensatz dazu nur eine Zeichenfolge mit Pfad und Dateinamen zurück. Sie müssen Methoden aus dem System.IO-Namespace verwenden, um die Flatfile zu öffnen und mit ihr zu arbeiten.
Public Sub Main()
Dim myADONETConnection As SqlClient.SqlConnection =
DirectCast(Dts.Connections("Test ADO.NET Connection").AcquireConnection(Dts.Transaction),
SqlClient.SqlConnection)
MsgBox(myADONETConnection.ConnectionString,
MsgBoxStyle.Information, "ADO.NET Connection")
Dim myFlatFileConnection As String =
DirectCast(Dts.Connections("Test Flat File Connection").AcquireConnection(Dts.Transaction),
String)
MsgBox(myFlatFileConnection, MsgBoxStyle.Information, "Flat File Connection")
Dts.TaskResult = ScriptResults.Success
End Sub
public void Main()
{
SqlConnection myADONETConnection =
Dts.Connections["Test ADO.NET Connection"].AcquireConnection(Dts.Transaction)
as SqlConnection;
MessageBox.Show(myADONETConnection.ConnectionString, "ADO.NET Connection");
string myFlatFileConnection =
Dts.Connections["Test Flat File Connection"].AcquireConnection(Dts.Transaction)
as string;
MessageBox.Show(myFlatFileConnection, "Flat File Connection");
Dts.TaskResult = (int)ScriptResults.Success;
}
Siehe auch
Integration Services-Verbindungen (SSIS)
Erstellen von Verbindungs-Managern