sp_update_job (Transact-SQL)
Aplica-se a: SQL Server Instância Gerenciada de SQL do Azure
Atualiza os atributos de um trabalho existente criado no serviço SQL Server Agent.
Convenções de sintaxe de Transact-SQL
Sintaxe
sp_update_job
[ [ @job_id = ] 'job_id' ]
[ , [ @job_name = ] N'job_name' ]
[ , [ @new_name = ] N'new_name' ]
[ , [ @enabled = ] enabled ]
[ , [ @description = ] N'description' ]
[ , [ @start_step_id = ] start_step_id ]
[ , [ @category_name = ] N'category_name' ]
[ , [ @owner_login_name = ] N'owner_login_name' ]
[ , [ @notify_level_eventlog = ] notify_level_eventlog ]
[ , [ @notify_level_email = ] notify_level_email ]
[ , [ @notify_level_netsend = ] notify_level_netsend ]
[ , [ @notify_level_page = ] notify_level_page ]
[ , [ @notify_email_operator_name = ] N'notify_email_operator_name' ]
[ , [ @notify_netsend_operator_name = ] N'notify_netsend_operator_name' ]
[ , [ @notify_page_operator_name = ] N'notify_page_operator_name' ]
[ , [ @delete_level = ] delete_level ]
[ , [ @automatic_post = ] automatic_post ]
[ ; ]
Argumentos
@job_id [ = ] 'job_id'
O número de identificação do trabalho a ser atualizado. @job_id é uniqueidentifier, com um padrão de NULL
.
Tanto @job_id quanto @job_name devem ser especificados, mas ambos não podem ser especificados.
@job_name [ = ] N'job_name'
O nome do trabalho. @job_name é sysname, com um padrão de NULL
.
Tanto @job_id quanto @job_name devem ser especificados, mas ambos não podem ser especificados.
@new_name [ = ] N'new_name'
O novo nome do trabalho. @new_name é sysname, com um padrão de NULL
.
@enabled [ = ] habilitado
Especifica se o trabalho está habilitado (1
) ou não habilitado (0
). @enabled é tinyint, com um padrão de NULL
.
@description [ = ] N'descrição'
A descrição do trabalho. @description é nvarchar(512), com um padrão de NULL
.
@start_step_id [ = ] start_step_id
O número de identificação da primeira etapa a ser executada para o trabalho. @start_step_id é int, com um padrão de NULL
.
@category_name [ = ] N'category_name'
ID da categoria do trabalho. @category_name é sysname, com um padrão de NULL
.
@owner_login_name [ = ] N'owner_login_name'
O nome do logon que é o proprietário do trabalho. @owner_login_name é sysname, com um padrão de NULL
. Somente membros da função de servidor fixa sysadmin podem alterar a propriedade do trabalho.
@notify_level_eventlog [ = ] notify_level_eventlog
Especifica quando colocar uma entrada no log de aplicativo do Microsoft Windows para este trabalho. @notify_level_eventlog é int e pode ser um desses valores.
Valor | Descrição (ação) |
---|---|
0 |
Nunca |
1 |
Caso haja êxito |
2 |
Caso haja falha |
3 |
Sempre |
@notify_level_email [ = ] notify_level_email
Especifica quando enviar um email após a conclusão deste trabalho. @notify_level_email é int, com um padrão de NULL
. @notify_level_email usa os mesmos valores que @notify_level_eventlog.
@notify_level_netsend [ = ] notify_level_netsend
Especifica quando enviar uma mensagem de rede após a conclusão deste trabalho. @notify_level_netsend é int, com um padrão de NULL
. @notify_level_netsend usa os mesmos valores que @notify_level_eventlog.
@notify_level_page [ = ] notify_level_page
Especifica quando enviar uma página após a conclusão deste trabalho. @notify_level_page é int, com um padrão de NULL
. @notify_level_page usa os mesmos valores que @notify_level_eventlog.
@notify_email_operator_name [ = ] N'notify_email_operator_name'
O nome do operador para quem o e-mail é enviado quando email_level é contatado. @notify_email_operator_name é sysname, com um padrão de NULL
.
@notify_netsend_operator_name [ = ] N'notify_netsend_operator_name'
O nome do operador para o qual a mensagem de rede é enviada. @notify_netsend_operator_name é sysname, com um padrão de NULL
.
@notify_page_operator_name [ = ] N'notify_page_operator_name'
O nome do operador para o qual a página é enviada. @notify_page_operator_name é sysname, com um padrão de NULL
.
@delete_level [ = ] delete_level
Especifica quando excluir o trabalho. @delete_level é int, com um padrão de NULL
. @delete_level usa os mesmos valores que @notify_level_eventlog.
@automatic_post [ = ] automatic_post
Identificado apenas para fins informativos. Não há suporte. A compatibilidade futura não está garantida.
Valores do código de retorno
0
(sucesso) ou 1
(falha).
Comentários
sp_update_job
deve ser executado a partir do msdb
banco de dados.
sp_update_job
altera apenas as configurações para as quais os valores de parâmetro são fornecidos. Se um parâmetro for omitido, a configuração atual será retida.
Esse procedimento armazenado compartilha o nome de sp_update_job
com um objeto semelhante para o serviço de Trabalhos Elásticos do Azure para Banco de Dados SQL do Azure. Para obter informações sobre a versão dos trabalhos elásticos, consulte jobs.sp_update_job (Trabalhos Elásticos do Azure).
Permissões
Esse procedimento armazenado pertence à função db_owner . Você pode conceder EXECUTE
permissões para qualquer usuário, mas essas permissões podem ser substituídas durante uma atualização do SQL Server.
Outros usuários devem receber uma das seguintes funções de banco de dados fixas do msdb
SQL Server Agent no banco de dados:
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
Para obter detalhes sobre as permissões dessas funções, consulte Funções de banco de dados fixas do SQL Server Agent.
Somente membros do sysadmin podem usar esse procedimento armazenado para editar os atributos de trabalhos que pertencem a outros usuários.
Exemplos
O exemplo a seguir altera o nome, a descrição e o status habilitado do trabalho 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