sp_update_job (Transact-SQL)
Changes the attributes of a job.
Transact-SQL Syntax Conventions
Syntax
sp_update_job [ @job_id =] job_id | [@job_name =] 'job_name'
[, [@new_name =] 'new_name' ]
[, [@enabled =] enabled ]
[, [@description =] 'description' ]
[, [@start_step_id =] step_id ]
[, [@category_name =] 'category' ]
[, [@owner_login_name =] 'login' ]
[, [@notify_level_eventlog =] eventlog_level ]
[, [@notify_level_email =] email_level ]
[, [@notify_level_netsend =] netsend_level ]
[, [@notify_level_page =] page_level ]
[, [@notify_email_operator_name =] 'operator_name' ]
[, [@notify_netsend_operator_name =] 'netsend_operator' ]
[, [@notify_page_operator_name =] 'page_operator' ]
[, [@delete_level =] delete_level ]
[, [@automatic_post =] automatic_post ]
Arguments
[ @job_id =] job_id
The identification number of the job to be updated. job_idis uniqueidentifier.[ @job_name =] 'job_name'
The name of the job. job_nameis nvarchar(128).Note
Either job_id or job_name must be specified but both cannot be specified.
[ @new_name =] 'new_name'
The new name for the job. new_nameis nvarchar(128).[ @enabled =] enabled
Specifies whether the job is enabled (1) or not enabled (0). enabledis tinyint.[ @description =] 'description'
The description of the job. description is nvarchar(512).[ @start_step_id =] step_id
The identification number of the first step to execute for the job. step_idis int.[ @category_name =] 'category'
The category of the job. categoryis nvarchar(128).[ @owner_login_name =] 'login'
The name of the login that owns the job. loginis nvarchar(128) Only members of the sysadmin fixed server role can change job ownership.[ @notify_level_eventlog =] eventlog_level
Specifies when to place an entry in the Microsoft Windows application log for this job. eventlog_levelis int, and can be one of these values.Value
Description (action)
0
Never
1
On success
2
On failure
3
Always
[ @notify_level_email =] email_level
Specifies when to send an e-mail upon the completion of this job. email_levelis int. email_leveluses the same values as eventlog_level.[ @notify_level_netsend =] netsend_level
Specifies when to send a network message upon the completion of this job. netsend_levelis int. netsend_leveluses the same values as eventlog_level.[ @notify_level_page =] page_level
Specifies when to send a page upon the completion of this job. page_levelis int. page_leveluses the same values as eventlog_level.[ @notify_email_operator_name =] 'email_name'
The name of the operator to whom the e-mail is sent when email_level is reached. email_name is nvarchar(128).[ @notify_netsend_operator_name =] 'netsend_operator'
The name of the operator to whom the network message is sent. netsend_operator is nvarchar(128).[ @notify_page_operator_name =] 'page_operator'
The name of the operator to whom a page is sent. page_operator is nvarchar(128).[ @delete_level =] delete_level
Specifies when to delete the job. delete_valueis int. delete_leveluses the same values as eventlog_level.[ @automatic_post =] automatic_post
Reserved.
Return Code Values
0 (success) or 1 (failure)
Remarks
sp_update_job must be run from the msdb database.
sp_update_job changes only those settings for which parameter values are supplied. If a parameter is omitted, the current setting is retained.
Permissions
By default, members of the sysadmin fixed server role can execute this stored procedure. Other users must be granted one of the following SQL Server Agent fixed database roles in the msdb database:
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
For details about the permissions of these roles, see SQL Server Agent Fixed Database Roles.
Only members of sysadmin can use this stored procedure to edit the attributes of jobs that are owned by other users.
Examples
The following example changes the name, description, and enabled status of the job NightlyBackups.
USE msdb ;
GO
EXEC dbo.sp_update_job
@job_name = N'NightlyBackups',
@new_name = N'NightlyBackups -- Disabled',
@description = N'Nightly backups disabled during server migration.',
@enabled = 0 ;
GO