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 に答える