Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

come conoscere lo stato dei lavori attualmente in esecuzione

Sembra che tu possa usare msdb.dbo.sysjobactivity , verificando la presenza di un record con start_execution_date non nullo e stop_execution_date nullo, il che significa che il lavoro è stato avviato, ma non è stato ancora completato.

Questo ti darebbe lavori attualmente in esecuzione:

SELECT sj.name
   , sja.*
FROM msdb.dbo.sysjobactivity AS sja
INNER JOIN msdb.dbo.sysjobs AS sj ON sja.job_id = sj.job_id
WHERE sja.start_execution_date IS NOT NULL
   AND sja.stop_execution_date IS NULL