dbo.sysjobactivity (Transact-SQL)

S’applique à :SQL Server

Enregistre l’activité et l’status de travail actuelles 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 de 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 Utilisé pour 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 la status d’exécution pour tous les travaux SQL Server Agent. Exécutez le code 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)