sp_help_jobstep (Transact-SQL)

適用対象:SQL Server

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_iduniqueidentifier で、既定値は NULL です。

[ @job_name = ] 'job_name' ジョブの名前。 job_namesysname で、既定値は NULL です。

注意

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

[ @step_id = ] step_id ジョブ内のステップの識別番号。 含まれていない場合は、ジョブ内のすべてのステップが含まれます。 step_idint で、既定値は NULL です。

[ @step_name = ] 'step_name' ジョブ内のステップの名前。 step_namesysname で、既定値は NULL です。

[ @suffix = ] suffix 出力の flags 列にテキストの説明が追加されるかどうかを示す フラグサフィックスbit で、既定値は 0 ですサフィックス1 の場合は、説明が追加されます。

リターン コードの値

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

結果セット

列名 データ型 説明
step_id int ステップの一意識別子。
step_name sysname ジョブ内のステップの名前。
サブシステム 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、 CmdExecPowerShell の各手順のみ)。
last_run_outcome int 最後に実行したときのステップの結果。

0 = 失敗

1 = 成功

2 = 再試行

3 = キャンセル済み

5 = 不明
last_run_duration int 最後に実行したステップの期間 (hhmmss)。
last_run_retries int 最後にステップを実行したとき、コマンドが再試行された回数。
last_run_date int 最後に実行を開始したステップの日付。
last_run_time int ステップが最後に実行を開始した時刻。
proxy_id int ジョブ ステップのプロキシ。

解説

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

アクセス許可

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

  • 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  

参照

sp_add_jobstep (Transact-SQL)
sp_delete_jobstep (Transact-SQL)
sp_help_job (Transact-SQL)
sp_update_jobstep (Transact-SQL)
システム ストアド プロシージャ (Transact-SQL)