sp_delete_schedule (Transact-SQL)
Elimina una pianificazione.
Convenzioni 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'arresto 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
Notare che il proprietario del processo può collegare un processo a una pianificazione e può scollegare un processo da una pianificazione senza dovere essere anche il proprietario della pianificazione. Tuttavia, non è possibile eliminare una pianificazione se lo scollegamento la lascia senza processi, a meno che il chiamante sia il proprietario della pianificazione.
Per informazioni sulle autorizzazioni di questi ruoli, vedere Ruoli di database predefiniti di SQL Server Agent.
Solo i membri del ruolo sysadmin possono eliminare una pianificazione di processi 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
Vedere anche
Riferimento
sp_add_schedule (Transact-SQL)