sp_add_jobschedule (Transact-SQL)

Crea una pianificazione per un processo.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

sp_add_jobschedule [ @job_id = ] job_id, | [ @job_name = ] 'job_name', [ @name = ] 'name'
     [ , [ @enabled = ] enabled_flag ]
     [ , [ @freq_type = ] frequency_type ]
     [ , [ @freq_interval = ] frequency_interval ]
     [ , [ @freq_subday_type = ] frequency_subday_type ]
     [ , [ @freq_subday_interval = ] frequency_subday_interval ]
     [ , [ @freq_relative_interval = ] frequency_relative_interval ]
     [ , [ @freq_recurrence_factor = ] frequency_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 ]
     [ , [ @schedule_id = ] schedule_id OUTPUT ]

Argomenti

  • [ @job_id= ] job_id
    Numero di identificazione del processo a cui viene aggiunta la pianificazione. job_id è di tipo uniqueidentifier e non prevede alcun valore predefinito.

  • [ @job_name= ] 'job_name'
    Nome del processo a cui viene aggiunta la pianificazione. job_name è di tipo nvarchar(128) e non prevede alcun valore predefinito.

    Nota

    È necessario specificare job_id o job_name, ma non è possibile specificarli entrambi.

  • [ @name= ] 'name'
    Nome della pianificazione. name è di tipo nvarchar(128) e non prevede alcun valore predefinito.

  • [ @enabled= ] enabled_flag
    Indica lo stato attuale della pianificazione. enabled_flag è di tipo tinyint e il valore predefinito è 1 (abilitata). Se il valore è 0, la pianificazione non è abilitata. Quando la pianificazione è disabilitata, il processo non viene eseguito.

  • [ @freq_type= ] frequency_type
    Valore che indica la frequenza di esecuzione del processo. frequency_type è di tipo int e il valore predefinito è 0. I possibili valori sono i seguenti:

    Valore

    Descrizione

    1

    Una volta

    4

    Giornaliera

    8

    Settimanale

    16

    Mensile

    32

    Mensile, relativa a frequency_interval.

    64

    All'avvio del servizio SQL Server Agent

    128

    Quando il computer è inattivo

  • [ @freq_interval= ] frequency_interval
    Giorno di esecuzione del processo. frequency_interval è di tipo int e il valore predefinito è 0. Dipende dal valore di frequency_type, come indicato nella tabella seguente:

    Valore

    Effetto

    1 (una volta)

    frequency_interval non viene utilizzato.

    4 (giornaliera)

    Ogni numero di giorni corrispondente a frequency_interval.

    8 (settimanale)

    frequency_interval corrisponde ad almeno uno dei valori seguenti combinati tramite l'operatore logico OR:

    1 = domenica

    2 = lunedì

    4 = martedì

    8 = mercoledì

    16 = giovedì

    32 = venerdì

    64 = sabato

    16 (mensile)

    Il giorno del mese corrispondente a frequency_interval.

    32 (frequenza mensile relativa)

    I possibili valori di frequency_interval sono i seguenti:

    1 = domenica

    2 = lunedì

    3 = martedì

    4 = mercoledì

    5 = giovedì

    6 = venerdì

    7 = sabato

    8 = giorno

    9 = giorno feriale

    10 = giorno festivo

    64 (all'avvio del servizio SQL Server Agent)

    frequency_interval non viene utilizzato.

    128

    frequency_interval non viene utilizzato.

  • [ @freq_subday_type= ] frequency_subday_type
    Specifica le unità per frequency_subday_interval. frequency_subday_type è di tipo int e non prevede alcun valore predefinito. I possibili valori sono i seguenti:

    Valore

    Descrizione (unità)

    0x1

    All'ora specificata

    0x4

    Minuti

    0x8

    Ore

  • [ @freq_subday_interval= ] frequency_subday_interval
    Numero di periodi indicato da frequency_subday_type che devono intercorrere tra ogni esecuzione del processo. frequency_subday_interval è di tipo int e il valore predefinito è 0.

  • [ @freq_relative_interval= ] frequency_relative_interval
    Definisce ulteriormente frequency_interval quando frequency_type è impostato su 32 (frequenza mensile relativa).

    frequency_relative_interval è di tipo int e non prevede alcun valore predefinito. I possibili valori sono i seguenti:

    Valore

    Descrizione (unità)

    1

    Primo

    2

    Secondo

    4

    Terzo

    8

    Quarto

    16

    Ultimo

    frequency_relative_interval indica l'occorrenza dell'intervallo. Se, ad esempio, frequency_relative_interval è impostato su 2, frequency_type è impostato su 32 e frequency_interval è impostato su 3, il processo pianificato verrà eseguito il secondo martedì di ogni mese.

  • [ @freq_recurrence_factor= ] frequency_recurrence_factor
    Numero di settimane o mesi che intercorrono tra le esecuzioni pianificate del processo. frequency_recurrence_factor viene utilizzato solo se frequency_type è impostato su 8, 16 o 32. frequency_recurrence_factor è di tipo int e il valore predefinito è 0.

  • [ @active_start_date= ] active_start_date
    Data in cui l'esecuzione del processo può avere inizio. active_start_date è di tipo int e non prevede alcun valore predefinito. La data è nel formato AAAAMMGG. Se active_start_date è impostato, la data deve essere maggiore o uguale a 19900101.

    Al termine della creazione della pianificazione, esaminare la data di inizio per verificare che corrisponda alla data corretta. Per ulteriori informazioni, vedere la sezione relativa alla data di inizio della pianificazione in Creazione e collegamento di pianificazioni ai processi.

  • [ @active_end_date= ] active_end_date
    Data in cui l'esecuzione del processo può essere arrestata. active_end_date è di tipo int e non prevede alcun valore predefinito. La data è nel formato AAAAMMGG.

  • [ @active_start_time= ] active_start_time
    Data compresa tra active_start_date e active_end_date per l'inizio dell'esecuzione del processo. active_start_time è di tipo int e non prevede alcun valore predefinito. L'ora è in formato HHMMSS a 24 ore.

  • [ **@active_end_time=**active_end_time
    Data compresa tra active_start_date e active_end_date per il termine dell'esecuzione del processo. active_end_time è di tipo int e non prevede alcun valore predefinito. L'ora è in formato HHMMSS a 24 ore.

  • [ @schedule_id=schedule_idOUTPUT
    Numero di identificazione assegnato alla pianificazione dopo che è stata creata correttamente. schedule_id è una variabile di output di tipo int e non prevede alcun valore predefinito.

  • [ @schedule_uid= ] schedule_uidOUTPUT
    Identificatore univoco per la pianificazione. schedule_uid è una variabile di tipo uniqueidentifier.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Set di risultati

Nessuno

Osservazioni

È possibile gestire le pianificazioni dei processi in modo indipendente dai processi. Per aggiungere una pianificazione a un processo, utilizzare sp_add_schedule per creare la pianificazione e quindi sp_attach_schedule per associare la pianificazione a un processo.

Autorizzazioni

Per impostazione predefinita, questa stored procedure può essere eseguita dai membri del ruolo predefinito del server sysadmin. Gli altri utenti devono appartenere a uno dei seguenti ruoli predefiniti del database di SQL Server Agent nel database msdb:

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Per informazioni sulle autorizzazioni di questi ruoli, vedere Ruoli di database predefiniti di SQL Server Agent.