適用於:SQL Server
以指定伺服器上的指定作業為目標。
語法
dbo.sp_add_jobserver
{ [ @job_id = ] 'job_id'
| [ @job_name = ] N'job_name' }
[ , [ @server_name = ] N'server_name' ]
[ , [ @automatic_post = ] automatic_post ]
[ ; ]
引數
[ @job_id = ] 『job_id』
作業的標識碼。
@job_id為 uniqueidentifier,預設值為 NULL。
必須指定@job_id或@job_name,但無法指定兩者。
[ @job_name = ] N'job_name'
作業的名稱。
@job_name為 sysname,預設值為 NULL。
必須指定@job_id或@job_name,但無法指定兩者。
[ @server_name = ] N'server_name'
要以作業為目標的伺服器名稱。
@server_name為 nvarchar(30),預設值為 (LOCAL)。
@server_name可以是(LOCAL)本地伺服器或現有目標伺服器的名稱。
[ @automatic_post = ] automatic_post
僅供參考之用。 不支援。 我們無法保證未來的相容性。
傳回碼值
0 (成功) 或 1 (失敗)。
結果集
無。
備註
@automatic_post存在於 中,但未列在 sp_add_jobserver[自變數] 底下。
@automatic_post保留供內部使用。
SQL Server Management Studio 提供易用的作業管理圖形介面,是建立及管理作業基礎結構的建議方式。
權限
您可以授與此 EXECUTE 程序的許可權,但這些許可權可能會在 SQL Server 升級期間覆寫。
其他用戶必須在資料庫中獲得下列其中一個 SQL Server Agent 固定資料庫角色 msdb :
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
如需這些角色權限的詳細資訊,請參閱 SQL Server Agent 固定資料庫角色。
只有 sysadmin 固定伺服器角色的成員可以針對涉及多部伺服器的作業執行sp_add_jobserver。
範例
A. 將作業指派給本地伺服器
下列範例會指派在本機伺服器上執行的作業 NightlyBackups 。
注意
此範例假設 NightlyBackups 作業已經存在。
USE msdb;
GO
EXECUTE dbo.sp_add_jobserver @job_name = N'NightlyBackups';
GO
B. 指派作業以在不同的伺服器上執行
下列範例會將多伺服器作業 Weekly Sales Backups 指派給伺服器 SEATTLE2。
注意
此範例假設 Weekly Sales Backups 作業已經存在,且 SEATTLE2 已註冊為目前實例的目標伺服器。
USE msdb;
GO
EXECUTE dbo.sp_add_jobserver
@job_name = N'Weekly Sales Backups',
@server_name = N'SEATTLE2';
GO