Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak uzyskać wartość od step1 do step2 w sql Job

Nie ma wbudowanej metody przekazywania wartości zmiennych pomiędzy etapami zadania. Istnieje jednak kilka obejść.

Jedną z opcji byłoby zapisanie wartości w tabeli na końcu kroku 1 i wyszukanie jej z powrotem z bazy danych w kroku 2.

Wygląda na to, że generujesz ProcessID wstawiając do tabeli i zwracając SCOPE_IDENTITY() wstawionego wiersza. Jeśli etap zadania 1 jest jedynym procesem wstawiającym do tej tabeli, możesz pobrać ostatnią wstawioną wartość z zadania 2 za pomocą IDENT_CURRENT('<tablename>') funkcja.

EDYTUJ

Jeśli wiele procesów może zostać wstawionych do tabeli sterowania procesem, najlepszym rozwiązaniem jest prawdopodobnie refaktoryzacja kroków 1 i 2 w jednym kroku – prawdopodobnie za pomocą kontrolującego pakietu głównego SSIS (lub innej równoważnej technologii), która może przekazywać zmienne między krokami.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SYSUTCDATETIME() vs GETUTCDATE() w SQL Server:jaka jest różnica?

  2. Jak dodać plik danych do bazy danych programu SQL Server (T-SQL)

  3. Napraw „Przynajmniej jeden z argumentów COALESCE musi być wyrażeniem, które nie jest stałą NULL” w SQL Server

  4. Aktualizacja wiersza w tabeli na podstawie zapytania podrzędnego w tej samej tabeli

  5. Wstaw wiele węzłów do pola XML w jednym zapytaniu