sp_help_jobhistory (Transact-SQL)

Gäller för:SQL Server

Tillhandahåller information om jobben för servrar inom multiserveradministrationsdomänen.

Transact-SQL syntaxkonventioner

Syntax

sp_help_jobhistory
    [ [ @job_id = ] 'job_id' ]
    [ , [ @job_name = ] N'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 = ] N'server' ]
    [ , [ @mode = ] 'mode' ]
[ ; ]

Arguments

[ @job_id = ] 'job_id'

Jobbidentifieringsnumret. @job_id är unik identifierare, med standardvärdet .NULL

[ @job_name = ] N'job_name'

Namnet på tjänsten. @job_name är sysname, med standardvärdet .NULL

[ @step_id = ] step_id

Steg-identifikationsnumret. @step_id är int, med standardvärdet .NULL

[ @sql_message_id = ] sql_message_id

Identifieringsnumret för felmeddelandet som returneras av SQL Server när jobbet körs. @sql_message_id är int, med standardvärdet .NULL

[ @sql_severity = ] sql_severity

Allvarlighetsgraden på felmeddelandet som SQL Server returnerar när jobbet körs. @sql_severity är int, med standardvärdet .NULL

[ @start_run_date = ] start_run_date

Datumet då jobbet startade. @start_run_date är int, med standardvärdet .NULL @start_run_date måste anges i formen yyyyMMdd, där yyyy är ett fyrteckensår, MM är ett tvåteckens månadsnamn och dd är ett tvåteckensdagnamn.

[ @end_run_date = ] end_run_date

Datumet då jobbet slutfördes. @end_run_date är int, med standardvärdet .NULL @end_run_date måste anges i formen yyyyMMdd, där yyyy är ett fyrteckensår, MM är ett tvåteckens månadsnamn och dd är ett tvåteckensdagnamn.

[ @start_run_time = ] start_run_time

Då jobbet startades. @start_run_time är int, med standardvärdet .NULL @start_run_time måste matas in i formen HHmmss, där HH är en tvåteckens timme på dagen, mm är en tvåteckens minut på dagen och ss är en tvåteckens sekund på dagen.

[ @end_run_time = ] end_run_time

När jobbet slutförde sin utförande. @end_run_time är int, med standardvärdet .NULL @end_run_time måste matas in i formen HHmmss, där HH är en tvåteckens timme på dagen, mm är en tvåteckens minut på dagen och ss är en tvåteckens sekund på dagen.

[ @minimum_run_duration = ] minimum_run_duration

Den minsta tiden för att jobbet ska slutföras. @minimum_run_duration är int, med standardvärdet .NULL @minimum_run_duration måste anges i formen HHmmss, där HH är en tvåteckens timme per dag, mm är en tvåteckens minut på dagen och ss är en tvåteckens sekund på dagen.

[ @run_status = ] run_status

Utförandestatusen för jobbet. @run_status är int, och kan vara ett av dessa värden.

Värde Description
0 Misslyckades
1 Lyckades
2 Försök igen (endast steg)
3 Annullerad
4 Pågående meddelande
5 Okänd

[ @minimum_retries = ] minimum_retries

Det minsta antalet gånger ett jobb bör försöka köra igen. @minimum_retries är int, med standardvärdet .NULL

[ @oldest_first = ] oldest_first

Om man först ska presentera produktionen med de äldsta jobben. @oldest_first är int, med standardvärdet .0

  • 0 Presenterar de senaste jobben först.
  • 1 Presenterar de äldsta jobben först.

[ @server = ] N'server'

Namnet på servern där jobbet utfördes. @server är sysname, med standardvärdet .NULL

[ @mode = ] "läge"

Specificerar om SQL Server skriver ut alla kolumner i resultatuppsättningen (FULL) eller en sammanfattning (SUMMARY) av kolumnerna. @mode är varchar(7), med standardvärdet .SUMMARY

Returnera kodvärden

0 (lyckades) eller 1 (fel).

Resultatuppsättning

Den faktiska kolumnlistan beror på värdet av @mode. Den mest omfattande kolumnmängden visas i följande tabell och returneras när @mode är FULL.

Kolumnnamn Datatyp Description
instance_id int Historikens registreringsnummer.
job_id uniqueidentifier Jobbidentifikationsnummer.
job_name sysname Namn på jobb.
step_id int Steg identifieringsnummer (0 för en jobbhistorik).
step_name sysname Stegnamn (NULL för en arbetshistorik).
sql_message_id int För ett Transact-SQL steg inträffade det senaste Transact-SQL felnumret som uppstod när kommandot kördes.
sql_severity int För ett Transact-SQL steg uppstod den högsta felgraden Transact-SQL när kommandot kördes.
message nvarchar(1024) Jobb- eller steghistorikmeddelande.
run_status int Resultatet av jobbet eller steget.
run_date int Datera att jobbet eller steget började utföras.
run_time int Ta tid på att jobbet eller steget börjar utföras.
run_duration int Förfluten tid i utförandet av jobbet eller steg-in-formatet HHmmss .
operator_emailed nvarchar(20) Operatör som fick e-post angående detta jobb (är NULL för steghistorik).
operator_netsent nvarchar(20) Operatören som fick ett nätverksmeddelande angående detta jobb (det gäller NULL steghistorik).
operator_paged nvarchar(20) Operatören som blev uppkallad angående detta jobb (det gäller NULL steghistorik).
retries_attempted int Antal gånger steget försöktes om (alltid 0 för en jobbhistorik).
server nvarchar(30) Servera steget eller jobbet körs på. Är alltid (local).

Anmärkningar

sp_help_jobhistory returnerar en rapport med historiken för de specificerade schemalagda jobben. Om inga parametrar anges innehåller rapporten historiken för alla schemalagda jobb.

Permissions

Du kan ge EXECUTE behörigheter för denna procedur, men dessa behörigheter kan åsidosättas vid en SQL Server-uppgradering.

Andra användare måste tilldelas en av följande SQL Server Agent-fasta databasroller i databasen msdb :

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

För detaljer om behörigheterna för dessa roller, se SQL Server Agent Fixed Database Roles.

Medlemmar i SQLAgentUserRole-databasrollen kan endast se historiken för jobb som de äger.

Examples

A. Lista all jobbinformation för ett jobb

Följande exempel listar all jobbinformation för jobbet NightlyBackups .

USE msdb;
GO

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

B. Listinformation för jobb som uppfyller vissa villkor

Följande exempel skriver ut alla kolumner och all jobbinformation för eventuella misslyckade jobb och misslyckade jobbsteg med ett felmeddelande ( 50100 ett användardefinierat felmeddelande) och en svårighetsgrad på 20.

USE msdb;
GO

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