Freigeben über


sp_help_jobhistory (Transact-SQL)

Stellt Informationen zu den Aufträgen für Server in der Domäne zur Multiserveradministration bereit.

Themenlink (Symbol) Transact-SQL-Syntaxkonventionen

Syntax

sp_help_jobhistory [ [ @job_id = ] job_id ] 
     [ , [ @job_name = ] 'job_name' ] 
     [ , [ @step_id = ] step_id ] 
     [ , [ @sql_message_id = ] sql_message_id ] 
     [ , [ @sql_severity = ] sql_severity ] 
     [ , [ @start_run_date = ] start_run_date ] 
     [ , [ @end_run_date = ] end_run_date ] 
     [ , [ @start_run_time = ] start_run_time ] 
     [ , [ @end_run_time = ] end_run_time ] 
     [ , [ @minimum_run_duration = ] minimum_run_duration ] 
     [ , [ @run_status = ] run_status ] 
     [ , [ @minimum_retries = ] minimum_retries ] 
     [ , [ @oldest_first = ] oldest_first ] 
     [ , [ @server = ] 'server' ] 
     [ , [ @mode = ] 'mode' ]

Argumente

  • [ @job_id= ] job_id
    Die Auftrags-ID job_id ist vom Datentyp uniqueidentifier. Der Standardwert ist NULL.

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

  • [ @step_id= ] step_id
    Die Schritt-ID. step_id ist vom Datentyp int. Der Standardwert ist NULL.

  • [ @sql_message_id= ] sql_message_id
    Die ID der Fehlermeldung, die von Microsoft SQL Server beim Ausführen des Auftrags zurückgegeben wurde. sql_message_id ist vom Datentyp int. Der Standardwert ist NULL.

  • [ @sql_severity= ] sql_severity
    Der Schweregrad der Fehlermeldung, die von SQL Server beim Ausführen des Auftrags zurückgegeben wurde. sql_severity ist vom Datentyp int. Der Standardwert ist NULL.

  • [ @start_run_date= ] start_run_date
    Das Datum, an dem der Auftrag gestartet wurde. start_run_dateist vom Datentyp int. Der Standardwert ist NULL. start_run_date muss im Format YYYYMMDD eingegeben werden, wobei YYYY ein vier Zeichen langes Jahr, MM ein zwei Zeichen langer Monatsname und DD ein zwei Zeichen langer Tagesname ist.

  • [ @end_run_date= ] end_run_date
    Das Datum, an dem der Auftrag abgeschlossen wurde. end_run_date ist vom Datentyp int. Der Standardwert ist NULL. end_run_datemuss im Format YYYYMMDD eingegeben werden, wobei YYYY ein vierstelliges Jahr, MM ein zwei Zeichen langer Monatsname und DD ein zwei Zeichen langer Tagesname ist.

  • [ @start_run_time= ] start_run_time
    Die Uhrzeit, zu der der Auftrag gestartet wurde. start_run_time ist vom Datentyp int. Der Standardwert ist NULL. start_run_timemuss im Format HHMMSS eingegeben werden, wobei HH eine zwei Zeichen lange Stunde, MM eine zwei Zeichen lange Minute und SS eine zwei Zeichen lange Sekunde ist.

  • [ @end_run_time= ] end_run_time
    Die Uhrzeit, zu der die Ausführung des Auftrags abgeschlossen wurde. end_run_time ist vom Datentyp int. Der Standardwert ist NULL. end_run_timemuss im Format HHMMSS eingegeben werden, wobei HH eine zwei Zeichen lange Stunde, MM eine zwei Zeichen lange Minute und SS eine zwei Zeichen lange Sekunde ist.

  • [ @minimum_run_duration= ] minimum_run_duration
    Die minimale Zeit für den Abschluss des Auftrags. minimum_run_duration ist vom Datentyp int. Der Standardwert ist NULL. minimum_run_durationmuss im Format HHMMSS eingegeben werden, wobei HH eine zwei Zeichen lange Stunde, MM eine zwei Zeichen lange Minute und SS eine zwei Zeichen lange Sekunde ist.

  • [ @run_status= ] run_status
    Der Ausführungsstatus des Auftrags. run_status ist vom Datentyp int. Der Standardwert ist NULL, und Die folgenden Werte sind möglich:

    Wert

    Beschreibung

    0

    Fehlgeschlagen

    1

    Erfolgreich

    2

    Wiederholen (nur Schritte)

    3

    Canceled

    4

    Wird ausgeführt

    5

    Unbekannt

  • [ @minimum_retries= ] minimum_retries
    Die Mindestanzahl von Wiederholungsversuchen für die Ausführung eines Auftrags. minimum_retries ist vom Datentyp int. Der Standardwert ist NULL.

  • [ @oldest_first= ] oldest_first
    Gibt an, ob bei der Ausgabe die ältesten Aufträge zuerst angezeigt werden sollen. oldest_first ist vom Datentyp int. Der Standardwert ist 0 und gibt an, dass die neuesten Aufträge zuerst ausgegeben werden. Mit 1 werden zuerst die ältesten Aufträge angezeigt.

  • [ @server= ] 'server'
    Der Name des Servers, auf dem der Auftrag ausgeführt wurde. server ist vom Datentyp nvarchar(30). Der Standardwert ist NULL.

  • [ @mode= ] 'mode'
    Gibt an, ob SQL Server alle Spalten im Resultset (FULL) oder eine Zusammenfassung der Spalten ausgeben soll. mode ist vom Datentyp varchar(7). Der Standardwert ist SUMMARY.

Rückgabecodewerte

0 (Erfolg) oder 1 (Fehler)

Resultsets

Die tatsächliche Spaltenliste ist von dem Wert für mode abhängig. Die umfassendste Spaltenliste wird untenstehend gezeigt und wird zurückgegeben, wenn der Wert für mode FULL ist.

Spaltenname

Datentyp

Beschreibung

instance_id

int

Verlaufseintrags-ID

job_id

uniqueidentifier

Auftrags-ID.

job_name

sysname

Auftragsname

step_id

int

Schritt-ID (0 für einen Auftragsverlauf).

step_name

sysname

Schrittname (NULL für einen Auftragsverlauf).

sql_message_id

int

Für Transact-SQL-Schritte die letzte Transact-SQL-Fehlernummer, die beim Ausführen des Befehls gemeldet wurde.

sql_severity

int

Für Transact-SQL-Schritte der höchste Transact-SQL-Fehlerschweregrad, der beim Ausführen des Befehls gemeldet wurde.

message

nvarchar(1024)

Meldung zu Auftrags- oder Schrittverlauf.

run_status

int

Ergebnis des Auftrags oder Schritts.

run_date

int

Datum, an dem das Ausführen des Auftrags oder Schritts begann.

run_time

int

Uhrzeit, zu der das Ausführen des Auftrags oder Schritts begann.

run_duration

int

Vergangene Ausführungszeit des Auftrags oder Schritts im Format HHMMSS.

operator_emailed

nvarchar(20)

Operator, der bezüglich dieses Auftrags per E-Mail benachrichtigt wurde (NULL für Schrittverlauf).

operator_netsent

nvarchar(20)

Operator, dem bezüglich dieses Auftrags eine Netzwerknachricht gesendet wurde (NULL für Schrittverlauf).

operator_paged

nvarchar(20)

Operator, der bezüglich dieses Auftrags per Pager benachrichtigt wurde (NULL für Schrittverlauf).

retries_attempted

int

Die Wiederholungsversuche für den Schritt (für einen Auftragsverlauf immer 0).

server

nvarchar(30)

Server, auf dem der Schritt oder Auftrag ausgeführt wird. Ist immer (local).

Hinweise

sp_help_jobhistory gibt einen Bericht mit dem Verlauf der angegebenen geplanten Aufträge zurück. Werden keine Parameter angegeben, enthält der Bericht den Verlauf aller geplanten Aufträge.

Berechtigungen

Standardmäßig können nur Mitglieder der festen Serverrolle sysadmin diese gespeicherte Prozedur ausführen. Anderen Benutzern muss eine der folgenden festen Datenbankrollen des SQL Server-Agents in der msdb-Datenbank zugewiesen werden:

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

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

Mitglieder der SQLAgentUserRole-Datenbankrolle können nur den Verlauf von Aufträgen anzeigen, deren Besitzer sie sind.

Beispiele

A.Auflisten aller Auftragsinformationen für einen Auftrag

Im folgenden Beispiel werden alle Auftragsinformationen für den NightlyBackups-Auftrag aufgelistet.

USE msdb ;
GO

EXEC dbo.sp_help_jobhistory 
    @job_name = N'NightlyBackups' ;
GO

B.Auflisten von Informationen für Aufträge, die bestimmte Bedingungen erfüllen

Im folgenden Beispiel werden alle Spalten und alle Auftragsinformationen für alle fehlgeschlagenen Aufträge und fehlgeschlagenen Auftragsschritte mit der Fehlermeldung 50100 (eine benutzerdefinierte Fehlermeldung) und einem Schweregrad von 20 aufgelistet.

USE msdb
GO

EXEC dbo.sp_help_jobhistory
    @sql_message_id = 50100,
    @sql_severity = 20,
    @run_status = 0,
    @mode = N'FULL' ;
GO

Siehe auch

Verweis

sp_purge_jobhistory (Transact-SQL)

Gespeicherte Systemprozeduren (Transact-SQL)