sp_delete_schedule (Transact-SQL)

Elimina una pianificazione.

Icona di collegamento a un argomentoConvenzioni della sintassi Transact-SQL

Sintassi

sp_delete_schedule { [ @schedule_id = ] schedule_id | [ @schedule_name = ] 'schedule_name' } ,
     [ @force_delete = ] force_delete

Argomenti

  • [ @schedule_id= ] schedule_id
    Numero di identificazione della pianificazione che si desidera eliminare. schedule_id è di tipo int e il valore predefinito è NULL.

    [!NOTA]

    È necessario specificare l'argomento schedule_id oppure l'argomento schedule_name ma non è possibile specificarli entrambi.

  • [ @schedule_name= ] 'schedule_name'
    Nome della pianificazione che si desidera eliminare. schedule_name è di tipo sysname e il valore predefinito è NULL.

    [!NOTA]

    È necessario specificare l'argomento schedule_id oppure l'argomento schedule_name ma non è possibile specificarli entrambi.

  • [ @force_delete = ] force_delete
    Specifica se la stored procedure avrà esito negativo se la pianificazione è associata a un processo. Force_delete è di tipo bit e il valore predefinito è 0. Se force_delete è 0, la stored procedure ha esito negativo se la pianificazione è associata a un processo. Se force_delete è 1, la pianificazione verrà eliminata indipendentemente dal fatto che la pianificazione sia associata a un processo.

Valori restituiti

0 (esito positivo) o 1 (esito negativo)

Set di risultati

Nessuno

Osservazioni

Per impostazione predefinita, una pianificazione non può essere eliminata se è associata a un processo. Per eliminare una pianificazione associata a un processo, specificare 1 per force_delete. L'eliminazione di una pianificazione non comporta l'interruzione dei processi in esecuzione.

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.

Solo i membri del ruolo predefinito del server sysadmin possono eliminare una pianificazione di processo di proprietà di un altro utente.

Esempi

A. Eliminazione di una pianificazione

Nell'esempio seguente viene eliminata la pianificazione NightlyJobs. Se è associata a un processo qualsiasi, la pianificazione non verrà eliminata.

USE msdb ;
GO

EXEC dbo.sp_delete_schedule
    @schedule_name = N'NightlyJobs' ;
GO

B. Eliminazione di una pianificazione associata a un processo

Nell'esempio seguente viene eliminata la pianificazione RunOnce anche se è associata a un processo.

USE msdb ;
GO

EXEC dbo.sp_delete_schedule
    @schedule_name = 'RunOnce',
    @force_delete = 1;
GO