sp_detach_schedule (Transact-SQL)
Remove uma associação entre uma agenda e um trabalho.
Convenções da sintaxe Transact-SQL
Sintaxe
sp_detach_schedule
{ [ @job_id = ] job_id | [ @job_name = ] 'job_name' } ,
{ [ @schedule_id = ] schedule_id | [ @schedule_name = ] 'schedule_name' } ,
[ @delete_unused_schedule = ] delete_unused_schedule
Argumentos
[ @job_id= ] job_id
O número de identificação do trabalho do qual remover a agenda. job_id é uniqueidentifier, com um padrão de NULL.[ @job_name= ] 'job_name'
O nome do trabalho do qual remover a agenda. job_name é sysname, com um padrão de NULL.Observação É necessário especificar job_id ou job_name, mas não é possível especificar ambos ao mesmo tempo.
[ @schedule_id= ] schedule_id
O número de identificação da agenda a ser removida do trabalho. schedule_id é int, com um padrão de NULL.[ @schedule_name= ] 'schedule_name'
O nome da agenda a ser removida do trabalho. schedule_name é sysname, com um padrão de NULL.Observação É necessário especificar a schedule_id ou o schedule_name, mas não é possível especificar ambos ao mesmo tempo.
[ @delete_unused_schedule= ] delete_unused_schedule
Especifica se agendas de trabalho não usadas devem ser excluídas. delete_unused_schedule é bit, com um padrão de 0, que significa que todas as agendas serão mantidas, mesmo se nenhum trabalho fizer referência a elas. Se for definido como 1, as agendas de trabalho não usadas serão excluídas caso nenhum trabalho faça referência a elas.
Valores de código de retorno
0 (êxito) ou 1 (falha)
Conjuntos de resultados
Nenhum
Permissões
Por padrão, os membros da função de servidor fixa sysadmin podem executar este procedimento armazenado. Deve ser concedida a outros usuários uma das seguintes funções de banco de dados fixas do SQL Server Agent no banco de dados msdb:
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Observe que o proprietário do trabalho pode anexar e desanexar o trabalho de uma agenda sem precisar ser também o proprietário da agenda. No entanto, uma agenda não pode ser excluída se a desanexação deixá-la sem trabalhos, a menos que o chamador seja o proprietário da agenda.
Para obter detalhes sobre as permissões dessas funções, consulte Funções de banco de dados fixas do SQL Server Agent.
O SQL Server verifica se o usuário possui a agenda. Somente membros da função de servidor fixa sysadmin podem desanexar agendas de trabalhos pertencentes a outro usuário.
Exemplos
O exemplo a seguir remove uma associação entre uma agenda 'NightlyJobs' e um trabalho 'BackupDatabase'.
USE msdb ;
GO
EXEC dbo.sp_detach_schedule
@job_name = 'BackupDatabase',
@schedule_name = 'NightlyJobs' ;
GO
Consulte também
Referência
sp_add_schedule (Transact-SQL)