Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

So erhalten Sie den Wert von step1 bis step2 im SQL-Job

Es gibt keine integrierte Methode zum Übergeben von Variablenwerten zwischen Jobschritten. Es gibt jedoch einige Problemumgehungen.

Eine Möglichkeit wäre, den Wert am Ende von Schritt 1 in der Tabelle zu speichern und ihn in Schritt 2 aus der Datenbank abzufragen.

Es hört sich so an, als würden Sie ProcessID generieren durch Einfügen in eine Tabelle und Zurückgeben des SCOPE_IDENTITY() der eingefügten Zeile. Wenn Auftragsschritt 1 der einzige Prozess ist, der in diese Tabelle einfügt, können Sie den zuletzt eingefügten Wert aus Auftrag 2 mithilfe von IDENT_CURRENT('<tablename>') Funktion.

BEARBEITEN

Wenn mehrere Prozesse in Ihre Prozesssteuerungstabelle eingefügt werden könnten, besteht die beste Lösung wahrscheinlich darin, die Schritte 1 und 2 in einen einzigen Schritt umzugestalten – möglicherweise mit einem steuernden SSIS-Masterpaket (oder einer anderen gleichwertigen Technologie), das die Variablen zwischen den Schritten übergeben kann.