dbo.sysjobactivity (Transact-SQL)
Aplica-se a: SQL Server
Registra a atividade e o status atuais do trabalho do SQL Server Agent. Essa tabela é armazenada no banco de dados msdb.
Nome da coluna | Tipo de dados | Descrição |
---|---|---|
session_id | int | ID da sessão armazenada na tabela syssessions no banco de dados msdb . |
job_id | uniqueidentifier | Identificação do trabalho. |
run_requested_date | datetime | Data e hora em que foi solicitada a execução do trabalho. |
run_requested_source | sysname(nvarchar(128)) | Quem solicitou a execução do trabalho. 1 = SOURCE_SCHEDULER 2 = SOURCE_ALERTER 3 = SOURCE_BOOT 4 = SOURCE_USER 6 = SOURCE_ON_IDLE_SCHEDULE |
queued_date | datetime | Data e hora em que o trabalho entrou na fila. Se o trabalho for executado diretamente, essa coluna será NULL. |
start_execution_date | datetime | Data e hora para as quais a execução do trabalho foi programada. |
last_executed_step_id | int | Identificação da última etapa de trabalho executada. |
last_executed_step_ date |
datetime | Data e hora em que começou a execução da última etapa do trabalho. |
stop_execution_date | datetime | Data e hora em que a execução do trabalho terminou. |
job_history_id | int | Usado para identificar uma linha na tabela sysjobhistory . |
next_scheduled_run_date | datetime | Próxima data e hora em que o trabalho está agendado para ser executado. |
Exemplo
Este exemplo retornará o status de tempo de execução para todos os trabalhos do SQL Server Agent. Execute o Transact-SQL a seguir no 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);