Compartir a través de


sp_delete_job (Transact-SQL)

Sintaxis

sp_delete_job { [ @job_id = ] job_id | [ @job_name = ] 'job_name' } ,
     [ , [ @originating_server = ] 'server' ] 
     [ , [ @delete_history = ] delete_history ]
     [ , [ @delete_unused_schedule = ] delete_unused_schedule ]

Argumentos

  • [ @job_id= ] job_id
    Es el número de identificación del trabajo que se va a eliminar. job_id es de tipo uniqueidentifier y su valor predeterminado es NULL.

  • [ @job_name= ] 'job_name'
    Es el nombre del trabajo que se va a eliminar. job_namej es de tipo sysname y su valor predeterminado es NULL.

    [!NOTA]

    Se debe especificar job_id o job_name, pero no ambos.

  • [ @originating_server= ] 'server'
    Para uso interno.

  • [ @delete_history= ] delete_history
    Especifica si se debe eliminar el historial del trabajo. delete_history es de tipo bit y su valor predeterminado es 1. Cuando delete_history es 1, se elimina el historial del trabajo. Cuando delete_history es 0, no se elimina el historial del trabajo.

    Tenga en cuenta que, cuando se elimina un trabajo y no se elimina el historial, la información de historial del trabajo no se muestra en el historial de trabajos de la interfaz gráfica de usuario del Agente SQL Server, pero la información continúa estando en la tabla sysjobhistory de la base de datos msdb.

  • [ @delete_unused_schedule= ] delete_unused_schedule
    Especifica si se deben eliminar las programaciones adjuntas a este trabajo si no están adjuntas a ningún otro trabajo. delete_unused_schedule es de tipo bit y su valor predeterminado es 1. Cuando delete_unused_schedule es 1, se eliminan las programaciones adjuntas a este trabajo si ningún otro trabajo hace referencia a la programación. Cuando delete_unused_schedule es 0, no se eliminan las programaciones.

Valores de código de retorno

0 (correcto) o 1 (error)

Conjuntos de resultados

Ninguno

Notas

El argumento @originating_server está reservado para uso interno.

El argumento @delete_unused_schedule proporciona compatibilidad con versiones anteriores de SQL Server quitando automáticamente las programaciones que no están adjuntas a ningún trabajo. Tenga en cuenta que este parámetro tiene como valor predeterminado el comportamiento compatible con versiones anteriores. Para mantener las programaciones que no están adjuntas a ningún trabajo, debe proporcionar el valor 0 como el argumento @delete_unused_schedule.

SQL Server Management Studio ofrece un método gráfico sencillo para administrar trabajos y es el método recomendado para crear y administrar la infraestructura de trabajo.

Este procedimiento almacenado no puede eliminar planes de mantenimiento y tampoco puede eliminar trabajos que forman parte de planes de mantenimiento. En su lugar, utilice SQL Server Management Studio para eliminar planes de mantenimiento.

Permisos

De forma predeterminada, los miembros de la función fija de servidor sysadmin pueden ejecutar este procedimiento almacenado. A otros usuarios debe concederse 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 más información acerca de los permisos de estas funciones, vea Funciones fijas de base de datos del Agente SQL Server.

Los miembros de la función fija de servidor sysadmin pueden ejecutar sp_delete_job para eliminar cualquier trabajo. Un usuario que no sea miembro de la función fija de servidor sysadmin sólo puede eliminar los trabajos de los que es propietario.

Ejemplos

En el ejemplo siguiente se elimina el trabajo NightlyBackups.

USE msdb ;
GO

EXEC sp_delete_job
    @job_name = N'NightlyBackups' ;
GO