sp_help_jobstep (Transact-SQL)

自動化された操作を実行するために SQL Server エージェント サービスが使用するジョブ内のステップに関する情報を返します。

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

構文

sp_help_jobstep { [ @job_id = ] 'job_id' | [ @job_name = ] 'job_name' }
     [ , [ @step_id = ] step_id ] 
     [ , [ @step_name = ] 'step_name' ] 
     [ , [ @suffix = ] suffix ] 

引数

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

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

    注意

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

  • [ @step_id =] step_id
    ジョブ ステップの識別番号を指定します。指定しない場合は、ジョブのすべてのステップが対象となります。step_id のデータ型は int で、既定値は NULL です。

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

  • [ @suffix =] suffix
    出力の flags 列に説明を追加するかどうかを指定します。suffix のデータ型は bit で、既定値は 0 です。suffix に 1 を指定すると、説明が追加されます。

戻り値

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

結果セット

列名

データ型

説明

step_id

int

ステップの一意識別子。

step_name

sysname

ジョブ ステップの名前。

subsystem

nvarchar(40)

ステップ コマンドを実行するサブシステム。

command

nvarchar(max)

ステップで実行するコマンド。

flags

int

ステップの動作を制御する値のビットマスク。

cmdexec_success_code

int

CmdExec ステップの場合、正常に実行できたコマンドのプロセス終了コード。

on_success_action

tinyint

ステップが成功した場合に実行する動作。

1 = 成功をレポートしてジョブを終了する

2 = 失敗をレポートしてジョブを終了する

3 = 次のステップに進む

4 = ステップに進む

on_success_step_id

int

on_success_action が 4 の場合、実行する次のステップ。

on_fail_action

tinyint

ステップが失敗した場合に実行する操作。値は on_success_action の場合と同じです。

on_fail_step_id

int

on_fail_action が 4 の場合、実行する次のステップ。

server

sysname

予約済み。

database_name

sysname

Transact-SQL ステップの場合は、コマンドを実行するデータベース。

database_user_name

sysname

Transact-SQL ステップの場合は、コマンドを実行するデータベース ユーザー コンテキスト。

retry_attempts

int

正常に実行できない場合にコマンドを再試行する最大回数。

retry_interval

int

再試行する間隔 (分単位)。

os_run_priority

int

予約済み。

output_file_name

nvarchar(200)

コマンド出力を書き込むファイル (Transact-SQL、CmdExec、および PowerShell ステップのみ)。

last_run_outcome

int

最後に実行したときのステップの結果。

0 = 失敗

1 = 成功

2 = 再試行

3 = キャンセル

5 = 不明

last_run_duration

int

最後に実行したときのステップの経過時間 (秒単位)。

last_run_retries

int

最後にステップを実行したときのコマンドの再試行回数。

last_run_date

int

ステップの実行を最後に開始した日付。

last_run_time

int

ステップの実行を最後に開始した時刻。

proxy_id

int

ジョブ ステップのプロキシ。

説明

sp_help_jobstepmsdb データベースにあります。

権限

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

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

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

SQLAgentUserRole のメンバは、自分が所有しているジョブのジョブ ステップだけを表示できます。

A. 特定のジョブのすべてのステップに関する情報を返す

次の例では、Weekly Sales Data Backup という名前のジョブに関する、すべてのジョブ ステップを返します。

USE msdb ;
GO

EXEC dbo.sp_help_jobstep
    @job_name = N'Weekly Sales Data Backup' ;
GO

B. 特定のジョブ ステップに関する情報を返す

次の例では、Weekly Sales Data Backup という名前のジョブに含まれる、最初のジョブ ステップに関する情報を返します。

USE msdb ;
GO

EXEC dbo.sp_help_jobstep
    @job_name = N'Weekly Sales Data Backup',
    @step_id = 1 ;
GO