sp_help_jobstep (Transact-SQL)

Gibt Informationen zu den Schritten eines Auftrags zurück, die der SQL Server-Agent-Dienst verwendet, um automatisierte Aktivitäten auszuführen.

Themenlink (Symbol)Transact-SQL-Syntaxkonventionen

Syntax

sp_help_jobstep { [ @job_id = ] 'job_id' | [ @job_name = ] 'job_name' }
     [ , [ @step_id = ] step_id ] 
     [ , [ @step_name = ] 'step_name' ] 
     [ , [ @suffix = ] suffix ] 

Argumente

  • [ @job_id =] 'job_id'
    Die ID des Auftrags, für den Auftragsinformationen zurückgegeben werden sollen. job_id ist ein Wert vom Datentyp uniqueidentifier; der Standardwert ist NULL.

  • [ @job_name =] 'job_name'
    Der Name des Auftrags. job_name ist ein Wert vom Datentyp sysname. Der Standardwert ist NULL.

    HinweisHinweis

    Es muss entweder job_id oder job_name angegeben werden, beide Angaben sind jedoch nicht möglich.

  • [ @step_id =] step_id
    Die ID des Auftragsschritts. Wenn diese ID nicht eingeschlossen ist, werden alle Schritte des Auftrags eingeschlossen. step_id ist ein Wert vom Datentyp int; der Standardwert ist NULL.

  • [ @step_name =] 'step_name'
    Der Name des Auftragsschritts. step_name ist ein Wert vom Datentyp sysname; der Standardwert ist NULL.

  • [ @suffix =] suffix
    Ein Flag, das anzeigt, ob eine Textbeschreibung an die flags-Spalte in der Ausgabe angefügt wird. suffixist vom Datentyp bit und besitzt den Standardwert 0. Wenn suffix den Wert 1 aufweist, wird eine Beschreibung angefügt.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Resultsets

Spaltenname

Datentyp

Beschreibung

step_id

int

Eindeutiger Bezeichner für den Schritt.

step_name

sysname

Name des Auftragsschritts.

subsystem

nvarchar(40)

Subsystem, in dem der Schrittbefehl ausgeführt werden soll.

command

nvarchar(max)

Befehl, der in dem Schritt ausgeführt wird.

flags

int

Bitmaske der Werte, die das Schrittverhalten steuern.

cmdexec_success_code

int

Bei einem CmdExec-Schritt ist dies der Prozessexitcode eines erfolgreichen Befehls.

on_success_action

tinyint

Auszuführende Aktion, wenn der Schritt erfolgreich ist:

1 = Auftrag mit Erfolgsmeldung beenden.

2 = Auftrag mit Fehlermeldung beenden.

3 = Zum nächsten Schritt wechseln.

4 = Zu einem angegebenen Schritt wechseln.

on_success_step_id

int

Wenn on_success_action den Wert 4 aufweist, wird hiermit der nächste auszuführende Schritt angezeigt.

on_fail_action

tinyint

Auszuführende Aktion, wenn der Schritt einen Fehler erzeugt. Die Werte entsprechen den Werten von on_success_action.

on_fail_step_id

int

Wenn on_fail_action den Wert 4 aufweist, wird hiermit der nächste auszuführende Schritt angezeigt.

server

sysname

Reserviert.

database_name

sysname

Für einen Transact-SQL-Schritt ist dies die Datenbank, in der der Befehl ausgeführt wird.

database_user_name

sysname

Für einen Transact-SQL-Schritt ist dies der Datenbank-Benutzerkontext, in dem der Befehl ausgeführt wird.

retry_attempts

int

Die maximale Anzahl von Wiederholungsversuchen für den Befehl (falls er nicht erfolgreich ist).

retry_interval

int

Das Intervall (in Minuten) zwischen den Wiederholungsversuchen.

os_run_priority

int

Reserviert.

output_file_name

nvarchar(200)

Datei, in die die Befehlsausgabe geschrieben werden soll (nur Transact-SQL-, CmdExec- und PowerShell-Schritte).

last_run_outcome

int

Ergebnis der letzten Ausführung des Schritts:

0 = Fehler

1 = Erfolg

2 = Wiederholen

3 = Abgebrochen

5 = Unbekannt

last_run_duration

int

Ausführungsdauer (in Sekunden) des Schritts bei der letzten Ausführung.

last_run_retries

int

Die Anzahl der Wiederholungsversuche für den Befehl bei der letzten Ausführung des Schritts.

last_run_date

int

Datum, an dem die Ausführung des Schritts zuletzt gestartet wurde.

last_run_time

int

Uhrzeit, zu der die Ausführung des Schritts zuletzt gestartet wurde.

proxy_id

int

Proxy für den Auftragsschritt.

Hinweise

sp_help_jobstep befindet sich in der msdb-Datenbank.

Berechtigungen

Standardmäßig können nur Mitglieder der festen Serverrolle sysadmin diese gespeicherte Prozedur ausführen. Andere Benutzer müssen Mitglieder der festen SQL Server-Agent-Datenbankrollen in der msdb-Datenbank sein:

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Weitere Informationen zu den Berechtigungen dieser Rollen finden Sie unter Feste Datenbankrollen des SQL Server-Agents.

Mitglieder von SQLAgentUserRole können nur die Auftragsschritte für Aufträge anzeigen, deren Besitzer sie sind.

Beispiele

A. Zurückgeben von Informationen für alle Schritte eines bestimmten Auftrags

Im folgenden Beispiel werden alle Auftragsschritte für den Auftrag Weekly Sales Data Backup zurückgegeben.

USE msdb ;
GO

EXEC dbo.sp_help_jobstep
    @job_name = N'Weekly Sales Data Backup' ;
GO

B. Zurückgeben von Informationen zu einem bestimmten Auftragsschritt

Im folgenden Beispiel werden Informationen zum ersten Auftragsschritt des Auftrags Weekly Sales Data Backup zurückgegeben.

USE msdb ;
GO

EXEC dbo.sp_help_jobstep
    @job_name = N'Weekly Sales Data Backup',
    @step_id = 1 ;
GO