Heim > Datenbank > MySQL-Tutorial > Wie übergebe ich SSIS-Variablen als Parameter an eine SQL-Ausführungsaufgabe für dynamisches SQL?

Wie übergebe ich SSIS-Variablen als Parameter an eine SQL-Ausführungsaufgabe für dynamisches SQL?

Patricia Arquette
Freigeben: 2025-01-06 18:17:43
Original
823 Leute haben es durchsucht

How to Pass SSIS Variables as Parameters to an Execute SQL Task for Dynamic SQL?

Übergabe von Variablen als Parameter in der Aufgabe „SQL ausführen“ in SSIS

Bei der Ausführung dynamischer SQL-Vorgänge ist häufig die Übergabe von Variablen als Parameter erforderlich, um Abfragen vielseitiger zu gestalten. In einem SSIS-Paket tritt ein solches Szenario auf, wenn Sie externe Werte an eine temporäre Tabellenerstellungsabfrage im Task „SQL ausführen“ übergeben müssen.

Frage:

Überlegen Sie ein SSIS-Paket, bei dem Daten aus einer Flatfile in eine Tabelle eingefügt werden. In diesem Paket wird ein „SQL ausführen“-Task verwendet, um eine temporäre Tabelle namens ##temptable mit bestimmten Spalten zu erstellen. Anschließend werden die Daten anhand bestimmter Filterkriterien in ##temptable eingefügt. Die Anforderung besteht darin, diese Filterkriterien dynamisch mithilfe von Variablen zu übergeben, die im SSIS-Paket erstellt wurden.

Lösung:

Um eine dynamische Parameterübergabe zu erreichen, konfigurieren Sie den Task „SQL ausführen“ wie folgt :

  1. Setzen Sie den SQLSourceType auf „Direct Input“.
  2. Geben Sie in der SQL-Anweisung den Namen der gespeicherten Prozedur an zusammen mit Fragezeichen für jeden Parameter, zum Beispiel:
CREATE PROCEDURE [dbo].[usp_temptable]
(
    @date DATETIME,
    @portfolioId INT,
    @stype NVARCHAR(50)
)
AS
BEGIN
    INSERT INTO [tempdb].dbo.##temptable (date, companyname, price, PortfolioId, stype)
    SELECT   date, companyname, price, PortfolioId, stype
    FROM        ProgressNAV
    WHERE     (Date = @date) AND (PortfolioId = @portfolioId) AND (stype in (@stype))
    ORDER BY CompanyName
END
Nach dem Login kopieren
  1. Klicken Sie auf die Parameterzuordnungsoption und stellen Sie die Verbindung zwischen jedem gespeicherten Prozedurparameter und der entsprechenden SSIS-Variablen her.
  2. Konfigurieren Sie die SSIS-Variablen mit den gewünschten Werten, die während der Aufgabenausführung an die gespeicherte Prozedur übergeben werden.

Das obige ist der detaillierte Inhalt vonWie übergebe ich SSIS-Variablen als Parameter an eine SQL-Ausführungsaufgabe für dynamisches SQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage