sp_help_jobhistory (Transact-SQL)

S’applique à :SQL Server

Fournit des informations sur les travaux pour les serveurs dans le domaine d'administration multiserveur.

Conventions de la syntaxe Transact-SQL

Syntaxe

  
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' ]  

Arguments

[ @job_id = ] job_id Numéro d’identification du travail. job_id est uniqueidentifier, avec une valeur par défaut null.

[ @job_name = ] 'job_name' Nom du travail. job_name est sysname, avec la valeur null par défaut.

[ @step_id = ] step_id Numéro d’identification de l’étape. step_id est int, avec une valeur par défaut null.

[ @sql_message_id = ] sql_message_id Numéro d’identification du message d’erreur retourné par Microsoft SQL Server lors de l’exécution du travail. sql_message_id est int, avec la valeur null par défaut.

[ @sql_severity = ] sql_severity Niveau de gravité du message d’erreur retourné par SQL Server lors de l’exécution du travail. sql_severity est int, avec la valeur NULL par défaut.

[ @start_run_date = ] start_run_date Date de démarrage du travail. start_run_date est int, avec une valeur par défaut null. start_run_date devez être entré dans le formulaire yyyyMMdd, où YYYY est une année à quatre caractères, MM est un nom de mois à deux caractères et DD est un nom de jour à deux caractères.

[ @end_run_date = ] end_run_date Date à laquelle le travail a été terminé. end_run_date est int, avec la valeur null par défaut. end_run_date devez être entré dans le formulaire yyyyMMdd, où AAAA est une année à quatre chiffres, MM est un nom de mois à deux caractères et DD est un nom de jour à deux caractères.

[ @start_run_time = ] start_run_time Heure de début du travail. start_run_time est int, avec la valeur NULL par défaut. start_run_time devez être entré dans la forme HHmmss, où HH est une heure à deux caractères du jour, MM est une minute à deux caractères du jour, et SS est une seconde à deux caractères du jour.

[ @end_run_time = ] end_run_time Heure à laquelle le travail a terminé son exécution. end_run_time est int, avec la valeur null par défaut. end_run_time devez être entré dans le formulaire HHmmss, où HH est une heure à deux caractères du jour, MM est une minute à deux caractères du jour, et SS est une seconde à deux caractères du jour.

[ @minimum_run_duration = ] minimum_run_duration Durée minimale de la fin du travail. minimum_run_duration est int, avec la valeur null par défaut. minimum_run_duration doit être entré dans la forme HHmmss, où HH est une heure à deux caractères du jour, MM est une minute à deux caractères du jour, et SS est une seconde à deux caractères du jour.

[ @run_status = ] run_status État d’exécution du travail. run_status est int, avec une valeur null par défaut et peut être l’une de ces valeurs.

Valeur Description
0 Échoué
1 Opération réussie
2 Reprise (étape uniquement)
3 Annulé
4 Message en cours
5 Inconnu

[ @minimum_retries = ] minimum_retries Nombre minimal de tentatives d’exécution d’un travail. minimum_retries est int, avec la valeur null par défaut.

[ @oldest_first = ] oldest_first Indique s’il faut d’abord présenter la sortie avec les travaux les plus anciens. oldest_first est int, avec une valeur par défaut de 0, qui présente d’abord les travaux les plus récents. 1 présente d’abord les travaux les plus anciens.

[ @server = ] 'server' Nom du serveur sur lequel le travail a été effectué. le serveur est nvarchar(30), avec une valeur par défaut null.

[ @mode = ] 'mode' Indique si SQL Server imprime toutes les colonnes du jeu de résultats (FULL) ou un résumé des colonnes. le mode est varchar(7), avec une valeur par défaut de SUMMARY.

Codet de retour

0 (réussite) ou 1 (échec)

Jeux de résultats

La liste de colonnes réelle dépend de la valeur du mode. L’ensemble de colonnes le plus complet est illustré ci-dessous et est retourné lorsque le mode est FULL.

Nom de la colonne Type de données Description
instance_id int Numéro d'identification de l'entrée d'historique.
job_id uniqueidentifier Numéro d’identification du travail.
job_name sysname Nom du travail.
step_id int Numéro d’identification de l’étape (sera 0 pour un historique des travaux).
step_name sysname Nom de l'étape (NULL pour un historique des travaux).
sql_message_id int Pour une étape Transact-SQL, le numéro d’erreur Transact-SQL le plus récent rencontré lors de l’exécution de la commande.
sql_severity int Pour une étape Transact-SQL, la gravité d’erreur Transact-SQL la plus élevée rencontrée lors de l’exécution de la commande.
message nvarchar(1024) Message d'historique d'étape ou de travail.
run_status int Résultat du travail ou de l'étape.
run_date int Date de début d'exécution du travail ou de l'étape.
run_time int Heure de début d'exécution du travail ou de l'étape.
run_duration int Temps écoulé dans l’exécution du travail ou de l’étape au HHmmss format.
operator_emailed nvarchar(20) Opérateur qui a reçu un courrier électronique concernant ce travail (NULL pour un historique d'étape).
operator_netsent nvarchar(20) Opérateur qui a reçu un message réseau concernant ce travail (NULL pour un historique d'étape).
operator_paged nvarchar(20) Opérateur qui a reçu un message par radiomessagerie concernant ce travail (NULL pour un historique d'étape).
retries_attempted int Nombre de reprises de l'étape (0 pour un historique d'étape).
server nvarchar(30) Serveur sur lequel est exécutée l'étape ou le travail. Est toujours (local).

Notes

sp_help_jobhistory retourne un rapport avec l’historique des travaux planifiés spécifiés. Si aucun paramètre n'est précisé, le rapport contient l'historique de tous les travaux planifiés.

Autorisations

Par défaut, les membres du rôle serveur fixe sysadmin peuvent exécuter cette procédure stockée. Les autres utilisateurs doivent disposer de l'un des rôles de base de données fixes suivants de SQL Server Agent dans la base de données msdb :

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Pour en savoir plus sur les autorisations de ces rôles, consultez Rôles de base de données fixes de l'Agent SQL Server.

Les membres du rôle de base de données SQLAgentUserRole peuvent uniquement afficher l’historique des travaux qu’ils possèdent.

Exemples

R. Affichage de toutes les informations d'un travail

L'exemple ci-dessous répertorie toutes les informations du travail NightlyBackups.

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

B. Affichage des informations sur les travaux répondant à certaines conditions

L'exemple ci-dessous imprime toutes les colonnes et toutes les informations de tous les travaux et toutes les étapes de travail qui ont échoué avec un message d'erreur 50100 (message d'erreur personnalisé) et un degré de gravité égal à 20.

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

Voir aussi

sp_purge_jobhistory (Transact-SQL)
Procédures stockées système (Transact-SQL)