Compartilhar via


sp_update_schedule (Transact-SQL)

Altera as configurações de uma agenda do SQL Server Agent.

Ícone de vínculo de tópico Convenções da sintaxe Transact-SQL

Sintaxe

sp_update_schedule 
    {   [ @schedule_id = ] schedule_id 
      | [ @name = ] 'schedule_name' }
    [ , [ @new_name = ] new_name ]
    [ , [ @enabled = ] enabled ]
    [ , [ @freq_type = ] freq_type ]
    [ , [ @freq_interval = ] freq_interval ] 
    [ , [ @freq_subday_type = ] freq_subday_type ] 
    [ , [ @freq_subday_interval = ] freq_subday_interval ] 
    [ , [ @freq_relative_interval = ] freq_relative_interval ] 
    [ , [ @freq_recurrence_factor = ] freq_recurrence_factor ] 
    [ , [ @active_start_date = ] active_start_date ] 
    [ , [ @active_end_date = ] active_end_date ] 
    [ , [ @active_start_time = ] active_start_time ] 
    [ , [ @active_end_time = ] active_end_time ] 
    [ , [ @owner_login_name = ] 'owner_login_name' ]
    [ , [ @automatic_post =] automatic_post ]

Argumentos

  • [ @schedule_id = ] schedule_id
    O identificador da agenda a ser modificada. schedule_id é int, sem padrão. É necessário especificar o schedule_id ou o schedule_name.

  • [ @name = ] 'schedule_name'
    0 nome da agenda a ser modificada. schedule_nameé sysname, sem padrão. É necessário especificar o schedule_id ou o schedule_name.

  • [ @new_name= ] new_name
    O novo nome da agenda. new_name é sysname, com um padrão de NULL. Quando new_name é NULL, o nome da agenda não é alterado.

  • [ @enabled = ] enabled
    Indica o status atual da agenda. enabledé tinyint, com um padrão de 1 (habilitado). Se for 0, o agendamento não está habilitado. Quando o agendamento não está habilitado, nenhum trabalho é executado nele.

  • [ @freq_type = ] freq_type
    Um valor que indica quando um trabalho deve ser executado. freq_typeé int, com um padrão de 0 e pode ter um destes valores.

    Value

    Descrição

    1

    Uma vez

    4

    Diariamente

    8

    Semanalmente

    16

    Mensalmente

    32

    Mensalmente, relativo a freq interval

    64

    Executado quando o serviço SQLServerAgent é iniciado

    128

    Executado quando o computador está ocioso

  • [ @freq_interval = ] freq_interval
    Os dias em que um trabalho é executado. freq_interval é int, com um padrão de 0 e depende do valor de freq_type.

    Valor de freq_type

    Efeito em freq_interval

    1 (uma vez)

    freq_interval não é usado.

    4 (diariamente)

    Todos os dias de freq_interval.

    8 (semanalmente).

    freq_interval é um ou mais dos seguintes (combinado com um operador lógico OR):

    1 = domingo

    2 = segunda-feira

    4 = terça-feira

    8 = quarta-feira

    16 = quinta-feira

    32 = Sexta-feira

    64 = Sábado

    16 (mensalmente)

    No dia freq_interval do mês

    32 (mensal relativo)

    freq_interval é um dos seguintes:

    1 = domingo

    2 = segunda-feira

    3 = Terça-feira

    4 = Quarta-feira

    5 = Quinta-feira

    6 = Sexta-feira

    7 = Sábado

    8 = dia

    9 = dia da semana

    10 = Dia de fim de semana

    64 (quando o serviço SQLServerAgent é iniciado)

    freq_interval não é usado.

    128

    freq_interval não é usado.

  • [ @freq_subday_type = ] freq_subday_type
    Especifica as unidades para freq_subday_interval*.* freq_subday_typeé int, com um padrão de 0 e pode ter um destes valores.

    Value

    Descrição (unidade)

    0x1

    Na hora especificada

    0x2

    Segundos

    0x4

    Minutos

    0x8

    Horas

  • [ @freq_subday_interval = ] freq_subday_interval
    O número de períodos de freq_subday_type que devem ocorrer entre cada execução de um trabalho. freq_subday_intervalé int, com um padrão de 0.

  • [ @freq_relative_interval = ] freq_relative_interval
    A ocorrência de um trabalho de freq_interval em cada mês, se freq_interval for 32 (mensal relativo). freq_relative_intervalé int, com um padrão de 0 e pode ter um destes valores.

    Value

    Descrição (unidade)

    1

    First

    2

    Segundo

    4

    Terceiro

    8

    Quarto

    16

    Último

  • [ @freq_recurrence_factor = ] freq_recurrence_factor
    O número de semanas ou meses entre execuções agendadas de um trabalho. freq_recurrence_factor será usado apenas se freq_type for 8, 16ou 32. freq_recurrence_factoré int, com um padrão de 0.

  • [ @active_start_date = ] active_start_date
    A data na qual a execução de um trabalho pode começar. active_start_dateé int, com um padrão de NULL, que indica a data de hoje. A data é formatada como AAAAMMDD. Se active_start_date não for NULL, a data deverá ser maior ou igual a 19900101.

    Depois que a agenda é criada, analise a data de início e confirme se a data está correta. Para obter mais informações, consulte a seção "Agendando datas de início" em Criar e anexar agendas para trabalhos.

  • [ @active_end_date = ] active_end_date
    A data na qual a execução de um trabalho pode parar. active_end_dateé int, com um padrão de 99991231, que indica 31 de dezembro de 9999. Formatada como AAAAMMDD.

  • [ @active_start_time = ] active_start_time
    A hora em qualquer dia entre active_start_date e active_end_date para iniciar a execução de um trabalho. active_start_timeé int, com um padrão de 000000, que indica 00h00 em um relógio de 24 horas e deve ser inserido com o formato HHMMSS.

  • [ @active_end_time = ] active_end_time
    A hora em qualquer dia entre active_start_date e active_end_date para terminar a execução de um trabalho. active_end_timeé int, com um padrão de 235959, que indica 23h59m59s em um relógio de 24 horas e deve ser inserido com o formato HHMMSS.

  • [ @owner_login_name= ] 'owner_login_name']
    O nome da entidade de segurança do servidor que possui a agenda. owner_login_name é sysname, com um padrão de NULL, que indica que a agenda é de propriedade do criador.

  • [ @automatic_post =] automatic_post
    Reservado.

Valores de código de retorno

0 (êxito) ou 1 (falha)

Comentários

Todos os trabalhos que usam a agenda usarão imediatamente as novas configurações. Entretanto, a alteração de uma agenda não para trabalhos que estejam atualmente em execução.

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

Para obter detalhes sobre as permissões dessas funções, consulte Funções de banco de dados fixas do SQL Server Agent.

Somente os membros de sysadmin podem modificar uma agenda pertencente a outro usuário.

Exemplos

O exemplo a seguir altera o status habilitado da agenda NightlyJobs para 0 e define o proprietário como terrid.

USE msdb ;
GO

EXEC dbo.sp_update_schedule
    @name = 'NightlyJobs',
    @enabled = 0,
    @owner_login_name = 'terrid' ;
GO

Consulte também

Referência

Procedimentos armazenados do SQL Server Agent (Transact-SQL)

sp_add_schedule (Transact-SQL)

sp_add_jobschedule (Transact-SQL)

sp_delete_schedule (Transact-SQL)

sp_help_schedule (Transact-SQL)

sp_attach_schedule (Transact-SQL)

Conceitos

Criar e anexar agendas para trabalhos

Agendar um trabalho

Criar uma agenda