1

是否可以列出在指定日期执行的所有计划作业?我有一个问题,我不确定作业是否已在昨天执行,以及所有步骤是否也已执行?

4

2 回答 2

2

要列出在指定日期内开始的所有作业:

declare @date date = getdate()

SELECT
    J.job_id,
    J.name
FROM msdb.dbo.sysjobs AS J 
INNER JOIN msdb.dbo.sysjobhistory AS H ON H.job_id = J.job_id
WHERE run_date = CONVERT(VARCHAR(8), GETDATE(), 112)
GROUP BY J.job_id, J.name

列出指定日期指定作业的所有步骤及其状态:

declare @date date = getdate()
declare @job_name varchar(50) = 'test'

SELECT
    H.run_date,
    H.run_time,
    H.step_id,
    H.step_name,
    H.run_status
FROM msdb.dbo.sysjobs AS J
INNER JOIN msdb.dbo.sysjobhistory AS H ON H.job_id = J.job_id
WHERE 
    run_date = CONVERT(VARCHAR(8), GETDATE(), 112)
    AND J.name = @job_name

更多信息在这里

于 2012-12-09T20:13:42.997 回答
0

在下面的链接中找到它提供了有关 sql 作业的所有信息

http://www.mssqltips.com/sqlservertip/2561/querying-sql-server-agent-job-information/

于 2012-12-09T22:13:29.023 回答