次の方法で共有


sp_help_jobactivity (Transact-SQL)

SQL Server エージェント ジョブのランタイム状態に関する情報を一覧表示します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

sp_help_jobactivity { [ @job_id = ] job_id | [ @job_name = ] 'job_name' }
     [ , [ @session_id = ] session_id ]

引数

  • [ @job_id =] job_id
    ジョブの識別番号を指定します。job_id のデータ型は uniqueidentifier で、既定値は NULL です。

  • [ @job_name =] 'job_name'
    ジョブの名前を指定します。job_name のデータ型は sysname で、既定値は NULL です。

    注意注意

    job_id または job_name のいずれかを指定する必要があります。両方を指定することはできません。

  • [ @session_id = ] session_id
    情報をレポートするセッション ID を指定します。session_id のデータ型は int で、既定値は NULL です。

戻り値

0 (成功) または 1 (失敗)

結果セット

次の結果セットを返します。

列名

データ型

説明

session_id

int

エージェント セッションの ID 番号。

job_id

uniqueidentifier

ジョブの識別子。

job_name

sysname

ジョブの名前。

run_requested_date

datetime

ジョブの実行が要求された日付。

run_requested_source

sysname

ジョブの実行を要求するソース。 次のいずれかです。

1 = スケジュールに基づいて実行

2 = 警告に応答して実行

3 = 起動時に実行

4 = ユーザーの指定で実行

6 = CPU アイドル スケジュールに基づいて実行

queued_date

datetime

要求がキューに登録された日付。 ジョブが直接実行された場合は NULL になります。

start_execution_date

datetime

ジョブが実行可能なスレッドに割り当てられた日付。

last_executed_step_id

int

最後にジョブ ステップを実行したステップ ID。

last_exectued_step_date

datetime

最後にジョブ ステップを開始した日付。

stop_execution_date

datetime

ジョブが停止した日付。

next_scheduled_run_date

datetime

ジョブの次回実行予定日。

job_history_id

int

ジョブ履歴テーブルにあるジョブ履歴の識別子。

message

nvarchar(1024)

前回のジョブ実行中に生成したメッセージ。

run_status

int

前回のジョブの実行で返されたステータス。

0 = エラー

1 = 成功

3 = キャンセル

5 = 不明な状態

operator_id_emailed

int

ジョブの完了時に電子メールの通知を受けたオペレーターの ID 番号。

operator_id_netsent

int

ジョブの完了時に、Nnet Send から通知を受けたオペレーターの ID 番号。

operator_id_paged

int

ジョブの完了時に、ポケットベルの通知を受けたオペレーターの ID 番号。

説明

このプロシージャでは、実行中のジョブに関する現在の状態のスナップショットが生成されます。 返された結果は、要求が処理された時点での情報です。

SQL Server エージェントのサービスが開始されるごとに、セッション ID が作成されます。 セッション ID は、msdb.dbo.syssessions テーブルに格納されています。

session_id が指定されていない場合、最新のセッションに関する情報が一覧表示されます。

job_name または job_id が指定されてない場合、すべてのジョブの情報が一覧表示されます。

権限

既定では、このストアド プロシージャを実行できるのは、sysadmin 固定サーバー ロールのメンバーです。 他のユーザーには、msdb データベースの次のいずれかの SQL Server エージェント固定データベース ロールが許可されている必要があります。

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

これらのロールの権限の詳細については、「SQL Server エージェントの固定データベース ロール」を参照してください。

他のユーザーが所有するジョブの利用状況を表示できるのは、sysadmin のメンバーだけです。

次の例では、現在のユーザーが表示する権限を持つ、すべてのジョブの利用状況を一覧表示します。

USE msdb ;
GO

EXEC dbo.sp_help_jobactivity ;
GO