sp_delete_schedule (Transact-SQL)
Elimina una programación.
Sintaxis
sp_delete_schedule { [ @schedule_id = ] schedule_id | [ @schedule_name = ] 'schedule_name' } ,
[ @force_delete = ] force_delete
Argumentos
[ @schedule_id= ] schedule_id
Número de identificación de la programación que se va a eliminar. schedule_id es de tipo int y su valor predeterminado es NULL.[!NOTA]
Se debe especificar schedule_id o schedule_name, pero no ambos.
[ @schedule_name= ] 'schedule_name'
Nombre de la programación que se va a eliminar. schedule_name es de tipo sysname y su valor predeterminado es NULL.[!NOTA]
Se debe especificar schedule_id o schedule_name, pero no ambos.
[ @force_delete = ] force_delete
Especifica si el procedimiento debe generar un error si la programación está adjunta a un trabajo. Force_delete es de tipo bit y su valor predeterminado es 0. Cuando force_delete es 0, el procedimiento almacenado genera un error si la programación está adjunta a un trabajo. Cuando force_delete es 1, la programación se elimina independientemente de si está adjunta a un trabajo.
Valores de código de retorno
0 (correcto) o 1 (error)
Conjuntos de resultados
Ninguno
Notas
De manera predeterminada, una programación no se puede eliminar si está adjunta a un trabajo. Para eliminar una programación que está adjunta a un trabajo, especifique el valor 1 para force_delete. La eliminación de una programación no detiene los trabajos actualmente en ejecución.
Permisos
De manera predeterminada, este procedimiento almacenado lo pueden ejecutar los miembros de la función fija de servidor sysadmin. Al resto de usuarios se les debe conceder una de las siguientes funciones fijas de base de datos del Agente SQL Server en la base de datos msdb:
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Para obtener detalles sobre los permisos de estas funciones, vea Funciones fijas de base de datos del Agente SQL Server.
Sólo los miembros de la función sysadmin pueden eliminar una programación de trabajo que sea propiedad de otro usuario.
Ejemplos
A. Eliminar una programación
En el ejemplo siguiente se elimina la programación NightlyJobs. Si la programación está adjunta a algún trabajo, en el ejemplo no se elimina la programación.
USE msdb ;
GO
EXEC dbo.sp_delete_schedule
@schedule_name = N'NightlyJobs' ;
GO
B. Eliminar una programación adjunta a un trabajo
En el ejemplo siguiente se elimina la programación RunOnce, independientemente de si está adjunta a un trabajo.
USE msdb ;
GO
EXEC dbo.sp_delete_schedule
@schedule_name = 'RunOnce',
@force_delete = 1;
GO