Sp_add_jobstepは、ジョブにステップ(アクション)を追加します
Sp_add_jobstep Adds Step Job
ジョブにステップ(アクション)を追加します。
文法
sp_add_jobstep [ @job_id = ] job_id | [ @job_name = ] ' job_name '
[ , [ @step_id = ] step_id ]
{ , [ @step_name = ] ' step_name '
}
[ , [ @subsystem = ] ' subsystem ' ]
[ , [ @command = ] ' command ' ]
[ , [ @additional_parameters = ] ' parameters ' ]
[ , [ @cmdexec_success_code = ] code ]
[ , [ @on_success_action = ] success_action ]
[ , [ @on_success_step_id = ] success_step_id ]
[ , [ @on_fail_action = ] fail_action ]
[ , [ @on_fail_step_id = ] fail_step_id ]
[ , [ @server = ] ' server ' ]
[ , [ @database_name = ] ' database ' ]
[ , [ @database_user_name = ] ' user ' ]
[ , [ @retry_attempts = ] retry_attempts ]
[ , [ @retry_interval = ] retry_interval ]
[ , [ @os_run_priority = ] run_priority ]
[ , [ @output_file_name = ] ' file_name ' ]
[ , [ @flags = ] flags ]
パラメータ
[ @job_id = ] job_id
ステップが追加されるジョブの識別番号。 job_id データ型は 一意の識別子 デフォルト設定はNULLです。
[ @ j ob_name = ] ' 職種名 '
ステップが追加されるジョブの名前。 職種名 データ型は sysname デフォルト設定はNULLです。
説明 指定する必要があります job_id または 職種名 、ただし両方ではありません。
[ @step_id = ] step_id ]
ジョブステップのシーケンス識別番号。ステップ識別番号は1から始まり、間にギャップなしで1ずつ増加します。既存のシーケンスにステップを挿入すると、シリアル番号を自動的に調整できます。指定されていない場合 step_id、 次に、値を指定します。 step_id データ型は int デフォルト設定はNULLです。
[ @step_name = ] ' step_name '
ステップの名前です。 step_name データ型は sysname 、デフォルト設定はありません。
[ @subsystem = ] ' サブシステム '
実行するSQLServerエージェントサービスですか コマンド サブシステム。 サブシステム データ型は nvarchar(40) 次のいずれかの値になります。
値 | 説明 |
---|---|
「ACTIVESCRIPTING」 | 動的スクリプト |
「CMDEXEC」 | オペレーティングシステムのコマンドまたは実行可能ファイル |
'分布' | 配布エージェントのコピージョブ |
「スナップショット」 | スナップショットエージェントジョブのコピー |
「LOGREADER」 | ログリーダーエージェントジョブのコピー |
「GO」 | マージエージェントジョブのコピー |
「TSQL」(デフォルト) | Transact-SQLステートメント |
[ @command = ] ' コマンド '
SQLServerAgentサービスに合格しました サブシステム コマンドが実行されました。 コマンド データ型は nvarchar(3200) デフォルト設定はNULLです。 コマンド これには、実行時に置き換えられる次の大文字と小文字を区別するトークンの1つ以上を含めることができます。
値 | 説明 |
---|---|
[A-DBN] | 名前データベース。ジョブがアラートによって実行される場合、タグは変換プロセス中にバージョン6.5 [DBN]タグを自動的に置き換えます。 |
[A-SVR] | サーバーの名前。ジョブがアラートによって実行される場合、タグは変換プロセス中にバージョン6.5 [SVR]タグを自動的に置き換えます。 |
[A-ERR] | エラー番号。ジョブがアラートによって実行される場合、タグは変換プロセス中にバージョン6.5 [ERR]タグを自動的に置き換えます。 |
[A-SEV] | エラーの重大度。ジョブがアラートによって実行される場合、タグは変換プロセス中にバージョン6.5 [SEV]タグを自動的に置き換えます。 |
[A-MSG] | メッセージテキスト。ジョブがアラートによって実行される場合、タグは変換プロセス中にバージョン6.5 [MSG]タグを自動的に置き換えます。 |
[日付] | 現在の日付(YYYYMMDD形式)。 |
[JOBID] | ジョブID。 |
[MACH] | コンピュータネーム。 |
[MSSA] | プライマリSQLServerAgentサービス名。 |
[SQLDIR] | SQLServerのディレクトリをインストールします。デフォルトでは、この値はC: Program Files Microsoft SQL Server MSSQLです。 |
【ステップ】 | このステップの実行回数のカウント(再試行を除く)。このステップコマンドを使用して、マルチステップループを強制的に終了させることができます。 |
[ステップ] | ステップID。 |
[時間] | 現在の時刻(HHMMSS形式)。 |
[STRTTM] | ジョブが実行を開始した時刻(HHMMSS形式)。 |
[STRTDT] | ジョブの実行が開始された日付(YYYYMMDD形式)。 |
[ @additional_parameters = ] ' パラメーター '
予約済み。 パラメーター データ型は ntext デフォルト設定はNULLです。
[ @cmdexec_success_code = ] コード
CmdExecサブシステムコマンドによって返される値。 コマンド 正常に実行されました。 コード データ型は int デフォルト設定は0です。
[ @on_success_action = ] success_action
ステップが成功したときに実行されるアクション。 success_action データ型は tinyint 次のいずれかの値になります。
値 | 説明(操作) |
---|---|
1 (デフォルト) | 成功後に終了 |
二 | 失敗後に終了する |
3 | 次のステップに進みます |
4 | 手順に進みます on_success_step_id |
[ @on_success_step_id = ] success_step_id
手順は成功し、 success_action ために 4 実行されたジョブのステップのID。 success_step_id データ型は int デフォルト設定は0です。
[ @on_fail_action = ] fail_action
ステップが失敗したときに実行されるアクション。 fail_action データ型は tinyint 次のいずれかの値になります。
値 | 説明(操作) |
---|---|
1 | 成功後に終了 |
二 (デフォルト) | 失敗後に終了する |
3 | 次のステップに進みます |
4 | 手順に進みます on_fail_step_id |
[ @on_fail_step_id = ] fail_step_id
ステップが失敗し、 fail_action ために 4 実行するジョブのステップID。 fail_step_id データ型は int デフォルト設定は0です。
[ @server = ] ' サーバ '
予約済み。 サーバ データ型は nvarchar(30) デフォルト値はNULLです。
[ @database_name = ] ' データベース '
TSQLステップを実行したデータベースの名前。 データベース データ型は sysname 、デフォルト設定はNULLで、この場合に使用されます 主人 データベース。
[ @database_user_name = ] ' ユーザー '
TSQLステップの実行に使用されるユーザーアカウントの名前です。 ユーザー ために sysname タイプ。デフォルト値はNULLです。 ユーザー NULLの場合、ステップはジョブ所有者のユーザーで実行されます データベース 文脈で。
[ @retry_attempts = ] try_attempts
このステップが失敗したときに使用された再試行の回数。 try_attempts データ型は int デフォルト設定は0です。これは、再試行が許可されていないことを意味します。
[ @retry_interval = ] try_interval
再試行間の時間(分単位)。 try_interval データ型は int デフォルト設定は0です。これは、再試行間隔が0分であることを意味します。
[ @os_run_priority = ] run_priority
予約済み。
[ @output_file_name = ] ' ファイル名 '
このステップの出力が保存されるファイル名。 ファイル名 データ型は nvarchar(200) デフォルト設定はNULLです。 ファイル名 含むことができます コマンド 下の1つ以上のトークン。このパラメーターは、TSQLまたはCmdExecサブシステムで実行されるコマンドで使用する場合にのみ有効です。
[ @flags = ] フラグ
動作を制御するオプション。 フラグ データ型は int 次のいずれかの値になります。
値 | 説明 |
---|---|
二 | 出力ファイルに追加 |
4 | 出力ファイルを書き換えます |
0 (デフォルト) | オプションが設定されていません |
戻りコード値
0(成功)または1(失敗)
結果セット
しない
コメント
SQL Server Enterprise Managerは、ジョブを管理するための使いやすいグラフィカルな方法を提供します。この方法を使用して、ジョブの基本構造を作成および管理することをお勧めします。
許可
実行許可のデフォルト付与 公衆 キャラクター。
例
次の例では、ジョブの名前を変更するジョブステップを作成します 売上高 データベースへの読み取り専用アクセス。さらに、この例では、5分の再試行間隔で5回の再試行を指定しています。
説明 この例では、Weekly Sales DataBackupジョブがすでに存在することを前提としています。
USE msdb EXEC sp_add_jobstep @job_name = 'Weekly Sales Data Backup', @step_name = 'Set database to read only', @subsystem = 'TSQL', @command = 'exec sp_dboption ''sales'', ''read only'', ''true''', @retry_attempts = 5, @retry_interval = 5