Freigeben über


Zuordnen von Abfrageparametern zu Variablen in einer SQL-Ausführungsaufgabe

In diesem Thema wird beschrieben, wie Sie eine parametrisierte SQL-Anweisung in der Execute SQL-Aufgabe verwenden und Zuordnungen zwischen Variablen und den Parametern in der SQL-Anweisung erstellen.

Weitere Informationen über die Ausführung der SQL-Aufgabe, die Parametermarkierungen und Parameternamen, die Sie mit verschiedenen Verbindungstypen verwenden, finden Sie unter SQL-Aufgabe ausführen und Parameter und Rückgabecodes in der SQL-Aufgabe ausführen.

So ordnen Sie einer Variablen einen Abfrageparameter zu

  1. Öffnen Sie in SQL Server Data Tools (SSDT)das gewünschte Integration Services -Paket.

  2. Doppelklicken Sie im Projektmappen-Explorer auf das Paket, um es zu öffnen.

  3. Klicken Sie auf die Registerkarte Ablaufsteuerung .

  4. 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 einer Aufgabe oder eines Containers in einem Kontrollfluss
    .

  5. Doppelklicken Sie auf den Task SQL ausführen.

  6. 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 direkte Eingaben, klicken Sie auf "Abfrage erstellen", und erstellen Sie dann einen SQL-Befehl mithilfe der grafischen Tools, die der Abfrage-Generator bereitstellt.

    • 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 @<parameter_name>
    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 wird SELECT verwendet, um Produkte aus der Tabelle " Produkt " in AdventureWorks2012 zurückzugeben, die eine ProductID größer als und kleiner als die durch zwei Parameter angegebenen Werte aufweisen.

    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 für die Verwendung von Parametern mit gespeicherten Prozeduren finden Sie unter Parameter und Rückgabecodes in der Sql-Aufgabe ausführen.

  7. Klicken Sie auf Parameterzuordnung.

  8. Klicken Sie auf Hinzufügen, um eine Parameterzuordnung hinzuzufügen.

  9. 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 @<parameter_name>
    ODBC 1, 2, 3, ...
    EXCEL und OLE DB 0, 1, 2, 3, ...
  10. 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.

  11. Geben Sie in der Liste Richtung an, ob der Parameter eine Eingabe, eine Ausgabe oder ein Rückgabewert ist.

  12. Legen Sie in der Liste Datentyp den Datentyp des Parameters fest.

    Von Bedeutung

    Der Datentyp des Parameters muss mit dem Datentyp der Variablen kompatibel sein.

  13. Wiederholen Sie die Schritte 8 bis 11 für jeden Parameter in der SQL-Anweisung.

    Von Bedeutung

    Die Reihenfolge von Parameterzuordnungen muss mit der Reihenfolge identisch sein, in der Parameter in der SQL-Anweisung aufgeführt sind.

  14. Klicke auf OK.

Siehe auch

SQL ausführen (Task)
Parameter und Rückgabecodes in der Execute-SQL-Aufgabe
Integration Services-Variablen (SSIS)