SSIS Ausdrücke, die zwei Variablen setzen

8

Ich versuche eine "Ausdrucksaufgabe" in SSIS zu verwenden, um einfach zwei Variablen zu initialisieren / setzen. Diese scheinbar einfache Aufgabe hat mich verrückt gemacht, weil ich nicht weiß, wie man die Aussagen trennt:

%Vor%

Das führt zu einem Parsingfehler, und ich habe eine ganze Menge an Dokumentation vergeblich durchgelesen. Wie werden Anweisungen getrennt und ich hoffe, dass ich nicht mehr als eine Ausdrucksaufgabe verwenden muss, weil ich viele Variablen habe ... Danke

    
LearnByReading 12.06.2015, 16:41
quelle

2 Antworten

15

Sie können immer nur eine Variable festlegen:

  

Um den Wert einer Variablen zur Laufzeit zu ändern, benötigen Sie einen   Ausdruck oder eine Skriptaufgabe. Der Ausdruck ist nicht sehr flexibel und   Die Skriptaufgabe benötigt .NET-Kenntnisse. Deshalb Microsoft   hat den Expression Task in SSIS 2012 eingeführt. Er ermöglicht Ihnen das Setzen des   Wert einer Variablen zur Laufzeit Nachteil ist, dass es nicht ist   verfügbar für 2008, und Sie können nur eine Variable gleichzeitig festlegen .

Ссылка

Sie müssten eine angepasste Multiple Expressions Task -Komponente herunterladen, die auf dem Link bereitgestellt wird, oder eine Expression Task für jede Variable.

    
Jeff Orris 12.06.2015, 17:26
quelle
4

Etwas, das ich kürzlich angefangen habe, was für die Leute hilfreich sein könnte:

Ich muss feststellen, dass es oft möglich ist, einen SQL-Task auszuführen, um die Aufgabe zu erledigen, anstatt entweder mehrere Ausdruckstasks oder eine Skriptaufgabe einzurichten. Die benötigte SQL-Datei kann je nach der zu verbindenden Datenbank ein wenig variieren. Mein Beispiel basiert auf SQL Server.

Mein Beispiel basiert auf der Initialisierung von Variablen aus Parametern, aber dies kann für verschiedene Situationen optimiert werden.

Schritt 1

Erstellen Sie eine Abfrage, die Parameter akzeptiert - das sind die Parameter oder Variablen, aus denen Sie die Werte benötigen. Sie können dies natürlich verwenden, um eine Variable auf 0 zu initialisieren oder einige Parameter oder Variablen zu arithmetieren.

Verwenden Sie die Option Einzelne Zeile für die Option Ergebnismenge .

Schritt 2

Richten Sie Ihr Parameter-Mapping wie gewohnt ein.

Schritt 3

Richten Sie Ihre Ergebnismenge ein.

Ich schätze, der Nachteil ist, dass Sie sich mit einer Datenbank verbinden, um das zu tun - aber wenn Sie SSIS installiert haben, dann haben Sie eine SQL Server-Instanz auf diesem Server - also bin ich mir nicht sicher Nachteil.

Ich finde das viel weniger Aufwand als eine Skriptaufgabe einzurichten, aber YMMV.

    
Jo Douglass 21.04.2017 14:17
quelle

Tags und Links