Partilhar via


sp_detach_schedule (Transact-SQL)

Aplica-se a:SQL Server

Elimina a associação entre um horário e um trabalho.

Transact-SQL convenções de sintaxe

Sintaxe

sp_detach_schedule
    [ [ @job_id = ] 'job_id' ]
    [ , [ @job_name = ] N'job_name' ]
    [ , [ @schedule_id = ] schedule_id ]
    [ , [ @schedule_name = ] N'schedule_name' ]
    [ , [ @delete_unused_schedule = ] delete_unused_schedule ]
    [ , [ @automatic_post = ] automatic_post ]
[ ; ]

Arguments

[ @job_id = ] 'job_id'

O número de identificação do emprego para remover o horário. @job_id é um identificador único, com um padrão de NULL.

Ou @job_id ou @job_name devem ser especificados, mas nenhum dos dois pode ser especificado.

[ @job_name = ] N'job_name'

O nome do trabalho para remover o horário. @job_name é sysname, com o padrão de NULL.

Ou @job_id ou @job_name devem ser especificados, mas nenhum dos dois pode ser especificado.

[ @schedule_id = ] schedule_id

O número de identificação do horário a remover do trabalho. @schedule_id é int, com um padrão de NULL.

Ou @schedule_id ou @schedule_name devem ser especificados, mas nenhum dos dois pode ser especificado.

[ @schedule_name = ] N'schedule_name'

O nome do horário a remover do trabalho. @schedule_name é sysname, com um padrão de NULL.

Ou @schedule_id ou @schedule_name devem ser especificados, mas nenhum dos dois pode ser especificado.

[ @delete_unused_schedule = ] delete_unused_schedule

Especifica se deve eliminar os horários de tarefas não utilizados. @delete_unused_schedule é bit, com um padrão de 0, o que significa que todos os horários são mantidos, mesmo que nenhum trabalho os referencia. Se definido para 1, os horários de tarefas não utilizados são eliminados se nenhum trabalho os referenciar.

[ @automatic_post = ] automatic_post

Identificado apenas para fins informativos. Não suportado. A compatibilidade futura não é garantida.

Valores de código de retorno

0 (sucesso) ou 1 (fracasso).

Conjunto de resultados

Nenhum.

Permissions

Pode conceder EXECUTE permissões neste procedimento, mas essas permissões podem ser anuladas durante uma atualização do SQL Server.

Outros utilizadores devem receber um dos seguintes papéis fixos de base de dados SQL Server Agent na msdb base de dados:

  • SQLAgentUserRole
  • SQLAgentReaderRole
  • SQLAgentOperatorRole

O dono do trabalho pode associar um trabalho a um horário e separar um trabalho de um horário sem ter de ser também o dono do horário. No entanto, um horário não pode ser apagado se o destacamento o deixar sem empregos, a menos que o interlocutor seja o dono do horário.

Para detalhes sobre as permissões destes papéis, consulte Funções de Base de Dados Fixas do Agente SQL Server.

O SQL Server verifica se o utilizador é proprietário do horário. Apenas os membros do papel de servidor fixo de sysadmin podem desligar agendas de trabalhos pertencentes a outro utilizador.

Examples

O exemplo seguinte elimina uma associação entre um NightlyJobs horário e um BackupDatabase trabalho.

USE msdb;
GO

EXECUTE dbo.sp_detach_schedule
    @job_name = 'BackupDatabase',
    @schedule_name = 'NightlyJobs';
GO