Nota
L'accesso a questa pagina richiede l'autorizzazione. Puoi provare ad accedere o a cambiare directory.
L'accesso a questa pagina richiede l'autorizzazione. Puoi provare a cambiare directory.
Si applica a:SQL Server
Elimina una pianificazione.
Convenzioni relative alla sintassi Transact-SQL
Sintassi
sp_delete_schedule
[ [ @schedule_id = ] schedule_id ]
[ , [ @schedule_name = ] N'schedule_name' ]
[ , [ @force_delete = ] force_delete ]
[ , [ @automatic_post = ] automatic_post ]
[ ; ]
Argomenti
[ @schedule_id = ] schedule_id
Numero di identificazione della pianificazione che si desidera eliminare.
@schedule_id è int, con il valore predefinito NULL.
È necessario specificare @schedule_id o @schedule_name , ma non è possibile specificare entrambi.
[ @schedule_name = ] N'schedule_name'
Nome della pianificazione che si desidera eliminare.
@schedule_name è sysname, con un valore predefinito .NULL
È necessario specificare @schedule_id o @schedule_name , ma non è possibile specificare entrambi.
[ @force_delete = ] force_delete
Specifica se la stored procedure avrà esito negativo se la pianificazione è associata a un processo.
@force_delete è bit, con il valore predefinito 0.
- Quando @force_delete è
0, la stored procedure ha esito negativo se la pianificazione è collegata a un processo. - Quando @force_delete è
1, la pianificazione viene eliminata indipendentemente dal fatto che la pianificazione sia collegata a un processo.
[ @automatic_post = ] automatic_post
Identificato solo a scopo informativo. Non supportato. Non è garantita la compatibilità con le versioni future.
Valori del codice restituito
0 (esito positivo) o 1 (errore).
Set di risultati
Nessuno.
Osservazioni:
Per impostazione predefinita, non è possibile eliminare una pianificazione se la pianificazione è collegata a un processo. Per eliminare una pianificazione associata a un processo, specificare il valore per 1@force_delete. L'eliminazione di una pianificazione non arresta i processi attualmente in esecuzione.
Autorizzazioni
È possibile concedere EXECUTE autorizzazioni per questa procedura, ma queste autorizzazioni potrebbero essere sottoposte a override durante un aggiornamento di SQL Server.
È necessario concedere ad altri utenti uno dei ruoli predefiniti del database di SQL Server Agent seguenti:msdb
- SQLAgentUserRole
- SQLAgentReaderRole
- SQLAgentOperatorRole
Il proprietario del processo può collegare un processo a una pianificazione e scollegare un processo da una pianificazione senza dover essere anche il proprietario della pianificazione. Tuttavia, non è possibile eliminare una pianificazione se lo scollegamento lascia senza processi, a meno che il chiamante non sia il proprietario della pianificazione.
Per informazioni dettagliate sulle autorizzazioni di questi ruoli, vedere Ruoli di database predefiniti di SQL Server Agent.
Solo i membri del ruolo sysadmin possono eliminare una pianificazione del processo di proprietà di un altro utente.
Esempi
R. Eliminare una pianificazione
Nell'esempio seguente viene eliminata la pianificazione NightlyJobs. Se la pianificazione è collegata a qualsiasi processo, l'esempio non elimina la pianificazione.
USE msdb;
GO
EXECUTE dbo.sp_delete_schedule @schedule_name = N'NightlyJobs';
GO
B. Eliminare una pianificazione collegata a un processo
Nell'esempio seguente viene eliminata la pianificazione RunOnce anche se è associata a un processo.
USE msdb;
GO
EXECUTE dbo.sp_delete_schedule
@schedule_name = 'RunOnce',
@force_delete = 1;
GO