sp_start_job (Transact-SQL)
適用対象:SQL Server
ジョブを直ちに実行するようにSQL Server エージェントに指示します。
構文
sp_start_job
{ [@job_name =] 'job_name'
| [@job_id =] job_id }
[ , [@error_flag =] error_flag]
[ , [@server_name =] 'server_name']
[ , [@step_name =] 'step_name']
[ , [@output_flag =] output_flag]
引数
[ @job_name = ] 'job_name'
開始するジョブの名前。 job_idまたはjob_nameを指定する必要がありますが、どちらも指定できません。 job_name は sysname で、既定値は NULL です。
[ @job_id = ] job_id
開始するジョブの識別番号。 job_idまたはjob_nameを指定する必要がありますが、どちらも指定できません。 job_id は uniqueidentifier で、既定値は NULL です。
[ @error_flag = ] error_flag
単に情報を示すためだけに特定されます。 サポートされていません。 将来の互換性は保証されません。
[ @server_name = ] 'server_name'
ジョブを開始するターゲット サーバー。 server_name は nvarchar(128)で、既定値は NULL です。 server_name は、ジョブが現在ターゲットになっているターゲット サーバーのいずれかである必要があります。
[ @step_name = ] 'step_name'
ジョブの実行を開始するステップの名前。 ローカル ジョブにのみ適用されます。 step_name は sysname で、既定値は NULL です
[ @output_flag = ] output_flag
単に情報を示すためだけに特定されます。 サポートされていません。 将来の互換性は保証されません。
リターン コードの値
0 (成功) または 1 (失敗)
結果セット
なし
解説
このストアド プロシージャは msdb データベースにあります。
アクセス許可
既定では、このストアド プロシージャを実行できるのは、 sysadmin 固定サーバー ロールのメンバーです。 他のユーザーには、 SQL Server msdb データベースの次のいずれかの エージェント固定データベース ロールが許可されている必要があります。
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
これらのロールの権限の詳細については、「 SQL Server エージェントの固定データベース ロール」を参照してください。
SQLAgentUserRole と SQLAgentReaderRole のメンバーは、自分が所有するジョブのみを開始できます。 SQLAgentOperatorRole のメンバーは、他のユーザーが所有しているものも含め、すべてのローカル ジョブを開始できます。 sysadmin のメンバーは、すべてのローカル ジョブとマルチサーバー ジョブを開始できます。
例
次の例では、 という名前 Weekly Sales Data Backup
のジョブを開始します。
USE msdb ;
GO
EXEC dbo.sp_start_job N'Weekly Sales Data Backup' ;
GO
参照
sp_delete_job (Transact-SQL)
sp_help_job (Transact-SQL)
sp_stop_job (Transact-SQL)
sp_update_job (Transact-SQL)
システム ストアド プロシージャ (Transact-SQL)