sp_start_job (Transact-SQL)
適用於:SQL Server
Azure SQL 受控執行個體
指示 SQL Server Agent 立即執行作業。
語法
sp_start_job
[ [ @job_name = ] N'job_name' ]
[ , [ @job_id = ] 'job_id' ]
[ , [ @error_flag = ] error_flag ]
[ , [ @server_name = ] N'server_name' ]
[ , [ @step_name = ] N'step_name' ]
[ , [ @output_flag = ] output_flag ]
[ ; ]
引數
[ @job_name = ] N'job_name'
要啟動之作業的名稱。 @job_name為 sysname,預設值為 NULL
。
必須指定@job_id或@job_name,但無法指定兩者。
[ @job_id = ] 'job_id'
要啟動之作業的標識碼。 @job_id為 uniqueidentifier,預設值為 NULL
。
必須指定@job_id或@job_name,但無法指定兩者。
[ @error_flag = ] error_flag
僅供參考之用。 不支援。 我們無法保證未來的相容性。
[ @server_name = ] N'server_name'
要啟動作業的目標伺服器。 @server_name為 sysname,預設值為 NULL
。 @server_name必須是作業目前目標的目標伺服器之一。
[ @step_name = ] N'step_name'
開始執行作業之步驟的名稱。 @step_name為 sysname,預設值為 NULL
。 僅適用於本機作業。
[ @output_flag = ] output_flag
僅供參考之用。 不支援。 我們無法保證未來的相容性。
傳回碼值
0
(成功) 或 1
(失敗)。
結果集
無。
備註
這個預存程式位於 msdb
資料庫中。
此預存程式會與 Azure SQL 資料庫 的 Azure Elastic Jobs 服務類似物件共用 的名稱sp_start_job
。 如需彈性作業版本的相關信息,請參閱 jobs.sp_start_job (Azure Elastic Jobs) (Transact-SQL) 。
此預存程式是由 db_owner 角色所擁有。 您可以授與 EXECUTE
任何用戶的許可權,但這些許可權可能會在 SQL Server 升級期間覆寫。
其他用戶必須在資料庫中獲得下列其中一個 SQL Server Agent 固定資料庫角色 msdb
:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
如需這些角色權限的詳細資訊,請參閱 SQL Server Agent 固定資料庫角色。
SQLAgentUserRole 和 SQLAgentReaderRole 的成員只能啟動他們所擁有的作業。 SQLAgentOperatorRole 的成員可以啟動所有本機作業,包括其他使用者所擁有的作業。 系統管理員的成員可以啟動所有本機和多伺服器作業。
範例
下列範例會啟動名為 Weekly Sales Data Backup
的作業。
USE msdb;
GO
EXEC dbo.sp_start_job N'Weekly Sales Data Backup';
GO