dbo.sysjobactivity (Transact-SQL)
Область применения: SQL Server
Записывает текущие агент SQL Server действия задания и состояние. Эта таблица хранится в базе данных msdb.
Имя столбца | Тип данных | Description |
---|---|---|
session_id | int | Идентификатор сеанса, хранящегося в таблице syssessions в базе данных msdb . |
job_id | uniqueidentifier | Идентификатор задания. |
run_requested_date | datetime | Дата и время последнего запроса на выполнение задания. |
run_requested_source | sysname(nvarchar(128)) | Источник запроса на выполнение задания. 1 = SOURCE_SCHEDULER 2 = SOURCE_ALERTER 3 = SOURCE_BOOT 4 = SOURCE_USER 6 = SOURCE_ON_IDLE_SCHEDULE |
queued_date | datetime | Дата и время последней постановки задания в очередь. Если задание запускается немедленно, значение этого столбца равно NULL. |
start_execution_date | datetime | Дата и время последнего выполнения задания по расписанию. |
last_executed_step_id | int | Идентификатор последнего выполненного шага задания. |
last_executed_step_ date |
datetime | Дата и время начала выполнения последнего шага задания. |
stop_execution_date | datetime | Дата и время завершения выполнения задания. |
job_history_id | int | Используется для идентификации строки в таблице sysjobhistory . |
next_scheduled_run_date | datetime | Дата и время следующего выполнения задания по расписанию. |
Пример
В этом примере будет возвращено состояние времени выполнения для всех заданий агент SQL Server. Выполните следующую команду Transact-SQL в 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);