sp_help_jobstep (Transact-SQL)
自動化された操作を実行するために SQL Server エージェント サービスが使用するジョブ内のステップに関する情報を返します。
構文
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 を指定すると、説明が追加されます。
結果セット
列名 | データ型 | 説明 |
---|---|---|
step_id |
int |
ステップの一意識別子。 |
step_name |
sysname |
ジョブ ステップの名前。 |
subsystem |
nvarchar(40) |
ステップ コマンドを実行するサブシステム。 |
command |
nvarchar(3200) |
ステップで実行するコマンド。 |
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 ステップのみ)。 |
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_jobstep は msdb データベースにあります。
権限
既定では、このストアド プロシージャを実行できるのは、sysadmin 固定サーバー ロールのメンバです。他のユーザーには、msdb データベースの次のいずれかの SQL Server エージェント固定データベース ロールが許可されている必要があります。
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
これらのロールの権限の詳細については、「SQL Server エージェントの固定データベース ロール」を参照してください。
SQLAgentUserRole のメンバは、自分が所有しているジョブのジョブ ステップだけを表示できます。
戻り値
0 (成功) または 1 (失敗)
例
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)