Zuordnen von Abfrageparametern zu Variablen in einem Task SQL ausführen
In diesem Thema wird beschrieben, wie Sie eine parametrisierte SQL-Anweisung im Task 'SQL ausführen' verwenden und wie Sie Zuordnungen zwischen Variablen und den Parametern der SQL-Anweisung erstellen.
Weitere Informationen zum Task SQL ausführen, zu den Parametermarkierungen und den Parameternamen, die Sie mit verschiedenen Verbindungstypen verwenden, finden Sie unter SQL ausführen (Task) und Parameter und Rückgabecodes im Task 'SQL ausführen'.
So ordnen Sie einer Variablen einen Abfrageparameter zu
Öffnen Sie in SQL Server-Datentools (SSDT) das gewünschte Integration Services-Paket.
Doppelklicken Sie im Projektmappen-Explorer auf das Paket, um es zu öffnen.
Klicken Sie auf die Registerkarte Ablaufsteuerung.
Wenn das Paket noch keinen Task SQL ausführen enthält, fügen Sie der Ablaufsteuerung des Pakets einen solchen Task hinzu. Weitere Informationen finden Sie unter Hinzufügen oder Löschen eines Tasks oder Containers in einer Ablaufsteuerung.
Doppelklicken Sie auf den Task SQL ausführen.
Stellen Sie auf eine der folgenden Arten einen parametrisierten SQL-Befehl bereit:
Verwenden Sie die direkte Eingabe, und geben Sie den SQL-Befehl für die SQLStatement-Eigenschaft ein.
Verwenden Sie die direkte Eingabe, klicken Sie auf Abfrage erstellen, und erstellen Sie einen SQL-Befehl mithilfe der grafischen Tools des Abfrage-Generators.
Verwenden Sie eine Dateiverbindung, und verweisen Sie auf die Datei, die den SQL-Befehl enthält.
Verwenden Sie eine Variable, und verweisen Sie auf die Variable, die den SQL-Befehl enthält.
Die in parametrisierten SQL-Anweisungen verwendeten Parametermarkierungen hängen vom Verbindungstyp ab, den der Task SQL ausführen verwendet.
Verbindungstyp
Parametermarkierung
ADO
?
ADO.NET und SQLMOBILE
@<Parametername>
ODBC
?
EXCEL und OLE DB
?
In der folgenden Tabelle finden Sie eine Auflistung von Beispielen des SELECT-Befehls nach verschiedenen Verbindungs-Managertypen. Parameter stellen die Filterwerte in den WHERE-Klauseln bereit. In den Beispielen werden mithilfe von SELECT Produkte aus der Product-Tabelle in AdventureWorks2012 zurückgegeben, die eine ProductID aufweisen, die größer oder kleiner als die von zwei Parametern angegebenen Werte ist.
Verbindungstyp
SELECT-Syntax
EXCEL, ODBC und OLEDB
SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
ADO
SELECT* FROM Production.Product WHERE ProductId > ? AND ProductID < ?
ADO.NET
SELECT* FROM Production.Product WHERE ProductId > @parmMinProductID AND ProductID < @parmMaxProductID
Beispiele zum Verwenden von Parametern mit gespeicherten Prozeduren finden Sie unter Parameter und Rückgabecodes im Task 'SQL ausführen'.
Klicken Sie auf Parameterzuordnung.
Klicken Sie auf Hinzufügen, um eine Parameterzuordnung hinzuzufügen.
Stellen Sie im Feld Parametername einen Namen bereit.
Die verwendeten Parameternamen hängen vom Verbindungstyp ab, den der Task 'SQL ausführen' verwendet.
Verbindungstyp
Parametername
ADO
Param1, Param2, …
ADO.NET und SQLMOBILE
@<Parametername>
ODBC
1, 2, 3, …
EXCEL und OLE DB
0, 1, 2, 3, …
Wählen Sie in der Liste Variablenname eine Variable aus. Weitere Informationen finden Sie unter Hinzufügen, Löschen, Ändern des Bereichs von benutzerdefinierten Variablen in einem Paket.
Geben Sie in der Liste Richtung an, ob der Parameter eine Eingabe, eine Ausgabe oder ein Rückgabewert ist.
Legen Sie in der Liste Datentyp den Datentyp des Parameters fest.
Wichtig Der Datentyp des Parameters muss mit dem Datentyp der Variablen kompatibel sein.
Wiederholen Sie die Schritte 8 bis 11 für jeden Parameter in der SQL-Anweisung.
Wichtig Die Reihenfolge von Parameterzuordnungen muss mit der Reihenfolge identisch sein, in der Parameter in der SQL-Anweisung aufgeführt sind.
Klicken Sie auf OK.