Compartir a través de


sp_stop_job (Transact-SQL)

Indica al Agente SQL Server que detenga la ejecución de un trabajo.

Sintaxis

sp_stop_job 
      [@job_name =] 'job_name'
    | [@job_id =] job_id 
    | [@originating_server =] 'master_server'
    | [@server_name =] 'target_server'

Argumentos

  • [ @job_name =] 'job_name'
    Nombre del trabajo que se va a detener. job_name es de tipo sysname y su valor predeterminado es NULL.
  • [ @job_id = ] job_id
    Número de identificación del trabajo que se va a detener. job_id es de tipo uniqueidentifier y su valor predeterminado es NULL.
  • [ @originating_server =] 'master_server'
    Nombre del servidor principal. Si se especifica, se detienen todos los trabajos multiservidor. master_server es de tipo nvarchar(128) y su valor predeterminado es NULL. Especifique este parámetro sólo cuando llame a sp_stop_job en un servidor de destino.

    [!NOTA] Sólo se puede especificar uno de los tres primeros parámetros.

  • [ @server_name = ] 'target_server'
    Nombre del servidor de destino específico en que se va a detener un trabajo multiservidor. target_server es de tipo nvarchar(128) y su valor predeterminado es NULL. Especifique este parámetro sólo cuando llame a sp_stop_job en un servidor principal para un trabajo multiservidor.

Conjuntos de resultados

Ninguno

Notas

Si un trabajo está ejecutando un paso de tipo CmdExec, se forzará la finalización prematura del proceso que se está ejecutando (por ejemplo, MyProgram.exe). La finalización prematura puede provocar un comportamiento imprevisible como, por ejemplo, que los archivos que el proceso utiliza se mantengan abiertos. En consecuencia, sp_stop_job sólo deberá utilizarse en circunstancias muy especiales si el trabajo contiene pasos de tipo CmdExec.

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.

Los miembros de SQLAgentUserRole y SQLAgentReaderRole sólo pueden detener los trabajos que les pertenecen. Los miembros de SQLAgentOperatorRole pueden detener todos los trabajos locales, incluidos los que pertenecen a otros usuarios. Los miembros de sysadmin pueden detener todos los trabajos locales y multiservidor.

Valores de código de retorno

0 (correcto) o 1 (error)

Ejemplos

En el ejemplo siguiente se detiene un trabajo denominado Weekly Sales Data Backup.

USE msdb ;
GO

EXEC dbo.sp_stop_job
    N'Weekly Sales Data Backup' ;
GO

Vea también

Referencia

sp_delete_job (Transact-SQL)
sp_help_job (Transact-SQL)
sp_start_job (Transact-SQL)
sp_update_job (Transact-SQL)
Procedimientos almacenados del sistema (Transact-SQL)

Ayuda e información

Obtener ayuda sobre SQL Server 2005