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 = ] 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'
Numéro d’identification du travail. @job_id est uniqueidentifier, avec la valeur par défaut NULL
.
[ @job_name = ] N’job_name'
Nom du travail. @job_name est sysname, avec la valeur par défaut NULL
.
[ @step_id = ] step_id
Numéro d’identification de l’étape. @step_id est int, avec la valeur par défaut NULL
.
[ @sql_message_id = ] sql_message_id
Numéro d’identification du message d’erreur retourné par SQL Server lors de l’exécution du travail. @sql_message_id est int, avec la valeur par défaut NULL
.
[ @sql_severity = ] sql_severity
Niveau de gravité du message d'erreur renvoyé par SQL Server lors de l'exécution du travail. @sql_severity est int, avec la valeur par défaut NULL
.
[ @start_run_date = ] start_run_date
Date de début de l'exécution du travail. @start_run_date est int, avec la valeur par défaut NULL
. @start_run_date doit être entré dans le formulaire yyyyMMdd
, où yyyy
il s’agit d’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 de fin de l'exécution du travail. @end_run_date est int, avec la valeur par défaut NULL
. @end_run_date devez être entré dans le formulaire yyyyMMdd
, où yyyy
il s’agit d’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.
[ @start_run_time = ] start_run_time
Heure du début d'exécution du travail. @start_run_time est int, avec la valeur par défaut NULL
. @start_run_time doit être entré dans la forme HHmmss
, où HH
il s’agit d’une heure à deux caractères du jour, mm
est une minute à deux caractères du jour et ss
est une seconde de deux caractères du jour.
[ @end_run_time = ] end_run_time
Heure de fin d'exécution du travail. @end_run_time est int, avec la valeur par défaut NULL
. @end_run_time 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 de deux caractères du jour.
[ @minimum_run_duration = ] minimum_run_duration
Durée minimale pour l'exécution du travail. @minimum_run_duration est int, avec la valeur par défaut NULL
. @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 de deux caractères du jour.
[ @run_status = ] run_status
État d’exécution du travail.@run_status est int et peut être l’une de ces valeurs.
Valeur | Description |
---|---|
0 |
Échec |
1 |
Réussi |
2 |
Reprise (étape uniquement) |
3 |
Annulée |
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 par défaut NULL
.
[ @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 la valeur par défaut 0
.
0
présente d’abord les travaux les plus récents.1
présente d’abord les travaux les plus anciens.
[ @server = ] N’server'
Nom du serveur sur lequel le travail a été effectué. @server est sysname, avec la valeur par défaut NULL
.
[ @mode = ] 'mode'
Spécifie si SQL Server imprime toutes les colonnes dans le jeu de résultats (FULL
) ou un résumé (SUMMARY
) des colonnes. @mode est varchar(7), avec la valeur par défaut SUMMARY
.
Valeurs des codes de retour
0
(réussite) or 1
(échec).
Jeu de résultats
La liste de colonnes réelle dépend de la valeur de @mode. L’ensemble de colonnes le plus complet est illustré dans le tableau suivant et est retourné lorsque @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 d’étape (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 été envoyé par e-mail concernant ce travail (est NULL pour l’historique des étapes). |
operator_netsent |
nvarchar(20) | Opérateur qui a été envoyé un message réseau concernant ce travail (pour NULL l’historique des étapes). |
operator_paged |
nvarchar(20) | Opérateur qui a été paginé concernant ce travail (est NULL pour l’historique des étapes). |
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
Vous pouvez accorder EXECUTE
des autorisations sur cette procédure, mais ces autorisations peuvent être remplacées lors d’une mise à niveau de SQL Server.
D’autres utilisateurs doivent disposer de l’un des rôles de base de données fixes SQL Server Agent suivants dans la msdb
base de données :
- 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. Répertorier toutes les informations de travail 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. Répertorier les informations relatives aux travaux qui correspondent à 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