Partager via


dbo.sysjobactivity (Transact-SQL)

S'applique à : SQL Server

Enregistre l’activité et l’état actuels du travail SQL Server Agent. Cette table est stockée dans la base de données msdb.

Nom de la colonne Type de données Description
session_id int ID de la session stockée dans la table syssessions dans la base de données msdb .
job_id uniqueidentifier ID du travail.
run_requested_date datetime Date et heure auxquelles le travail devait s'exécuter.
run_requested_source sysname(nvarchar(128)) Demandeur de l'exécution du travail.

1 = SOURCE_SCHEDULER

2 = SOURCE_ALERTER

3 = SOURCE_BOOT

4 = SOURCE_USER

6 = SOURCE_ON_IDLE_SCHEDULE
queued_date datetime Date et heure auxquelles ce travail a intégré une file d'attente. Si le travail est exécuté directement, cette colonne affiche la valeur NULL.
start_execution_date datetime Date et heure auxquelles l'exécution du travail a été prévue.
last_executed_step_id int ID de la dernière étape exécutée dans le travail.
last_executed_step_

date
datetime Date et heure auxquelles l'exécution de la dernière étape du travail a démarré.
stop_execution_date datetime Date et heure auxquelles l'exécution du travail s'est terminée.
job_history_id int Permet d’identifier une ligne dans la table sysjobhistory .
next_scheduled_run_date datetime Prochaines date et heure prévues pour l'exécution du travail.

Exemple

Cet exemple retourne l’état d’exécution de tous les travaux SQL Server Agent. Exécutez l’instruction Transact-SQL suivant dans SQL Server Management Studio.

SELECT sj.Name, 
	CASE
		WHEN sja.start_execution_date IS NULL THEN 'Not running'
		WHEN sja.start_execution_date IS NOT NULL AND sja.stop_execution_date IS NULL THEN 'Running'
		WHEN sja.start_execution_date IS NOT NULL AND sja.stop_execution_date IS NOT NULL THEN 'Not running'
	END AS 'RunStatus'
FROM msdb.dbo.sysjobs sj
JOIN msdb.dbo.sysjobactivity sja
ON sj.job_id = sja.job_id
WHERE session_id = (
	SELECT MAX(session_id) FROM msdb.dbo.sysjobactivity); 

Voir aussi

dbo.sysjobhistory (Transact-SQL)