sp_help_job (Transact-SQL)

Se aplica a:SQL Server

Devuelve información sobre los trabajos que usa Agente SQL Server para realizar actividades automatizadas en SQL Server.

Convenciones de sintaxis de Transact-SQL

Sintaxis

  
sp_help_job { [ @job_id = ] job_id  
[ @job_name = ] 'job_name' }   
     [ , [ @job_aspect = ] 'job_aspect' ]   
     [ , [ @job_type = ] 'job_type' ]   
     [ , [ @owner_login_name = ] 'login_name' ]   
     [ , [ @subsystem = ] 'subsystem' ]   
     [ , [ @category_name = ] 'category' ]   
     [ , [ @enabled = ] enabled ]   
     [ , [ @execution_status = ] status ]   
     [ , [ @date_comparator = ] 'date_comparison' ]   
     [ , [ @date_created = ] date_created ]   
     [ , [ @date_last_modified = ] date_modified ]   
     [ , [ @description = ] 'description_pattern' ]  

Argumentos

[ @job_id = ] job_id Número de identificación del trabajo. job_id es uniqueidentifier, con un valor predeterminado de NULL.

[ @job_name = ] 'job_name' Nombre del trabajo. job_name es sysname, con un valor predeterminado de NULL.

Nota

Para ver un trabajo específico, debe especificarse job_id o job_name . Omita tanto job_id como job_name para devolver información sobre todos los trabajos.

[ @job_aspect = ] 'job_aspect' Atributo de trabajo que se va a mostrar. job_aspect es varchar(9), con un valor predeterminado de NULL y puede ser uno de estos valores.

Valor Descripción
ALL Información del aspecto del trabajo
TRABAJO Información del trabajo
HORARIOS Información de la programación
PASOS Información de los pasos del trabajo
OBJETIVOS Información de los destinos

[ @job_type = ] 'job_type' Tipo de trabajos que se van a incluir en el informe. job_type es varchar(12), con un valor predeterminado de NULL. job_type puede ser LOCAL o MULTI-SERVER.

[ @owner_login_name = ] 'login_name' Nombre de inicio de sesión del propietario del trabajo. login_name es sysname, con un valor predeterminado de NULL.

[ @subsystem = ] 'subsystem' Nombre del subsistema. el subsistema es nvarchar(40), con un valor predeterminado de NULL.

[ @category_name = ] 'category' Nombre de la categoría. category es sysname, con un valor predeterminado de NULL.

[ @enabled = ] enabled Número que indica si se muestra información para trabajos habilitados o trabajos deshabilitados. enabled es tinyint, con un valor predeterminado de NULL. 1 indica trabajos habilitados y 0 indica trabajos deshabilitados.

[ @execution_status = ] status Estado de ejecución de los trabajos. status es int, con un valor predeterminado de NULL y puede ser uno de estos valores.

Valor Descripción
0 Devuelve solo los trabajos que no están inactivos o suspendidos.
1 En ejecución.
2 En espera de subproceso.
3 Entre reintentos.
4 Inactivo.
5 Suspendido.
7 Realizando acciones de finalización.

[ @date_comparator = ] 'date_comparison' Operador de comparación que se va a usar en comparaciones de date_created y date_modified. date_comparison es char(1), y puede ser =, <o >.

[ @date_created = ] date_created Fecha en que se creó el trabajo. date_createdes datetime, con un valor predeterminado de NULL.

[ @date_last_modified = ] date_modified Fecha en la que se modificó por última vez el trabajo. date_modified es datetime, con un valor predeterminado de NULL.

[ @description = ] 'description_pattern' Descripción del trabajo. description_pattern es nvarchar(512), con un valor predeterminado de NULL. description_pattern puede incluir los caracteres comodín SQL Server para la coincidencia de patrones.

Valores de código de retorno

0 (correcto) o 1 (error)

Conjuntos de resultados

Si no se especifica ningún argumento, sp_help_job devuelve este conjunto de resultados.

Nombre de la columna Tipo de datos Descripción
job_id uniqueidentifier Id. único del trabajo.
originating_server nvarchar(30) Nombre del servidor del que proviene el trabajo.
name sysname Nombre del trabajo.
enabled tinyint Indica si el trabajo está habilitado para su ejecución.
description nvarchar(512) Descripción del trabajo.
start_step_id int Id. del paso del trabajo en el que debe comenzar la ejecución.
category sysname Categoría del trabajo
owner sysname Propietario del trabajo.
notify_level_eventlog int Máscara de bits que indica en qué circunstancias se debe registrar un evento de notificación en el registro de aplicaciones de Microsoft Windows. Puede ser uno de estos valores:

0 = Nunca

1 = Cuando un trabajo se realiza correctamente

2 = Cuando se produce un error en el trabajo

3 = Cada vez que se complete el trabajo (independientemente del resultado del trabajo)
notify_level_email int Máscara de bits que indica en qué circunstancias se debe enviar un correo electrónico de notificación cuando se completa un trabajo. Los valores posibles son los mismos que para notify_level_eventlog.
notify_level_netsend int Máscara de bits que indica en qué circunstancias se debe enviar un mensaje de red cuando se completa un trabajo. Los valores posibles son los mismos que para notify_level_eventlog.
notify_level_page int Máscara de bits que indica en qué circunstancias se debe enviar una página cuando se completa un trabajo. Los valores posibles son los mismos que para notify_level_eventlog.
notify_email_operator sysname Nombre de correo electrónico del operador que recibe la notificación.
notify_netsend_operator sysname Nombre del equipo o del usuario que se utiliza al enviar mensajes de red.
notify_page_operator sysname Nombre del equipo o del usuario que se utiliza al enviar un mensaje a un localizador.
delete_level int Máscara de bits que indica en qué circunstancias se debe eliminar el trabajo cuando se completa un trabajo. Los valores posibles son los mismos que para notify_level_eventlog.
date_created datetime Fecha en que se creó el trabajo.
date_modified datetime Fecha en que se modificó el trabajo por última vez.
version_number int Versión del trabajo (se actualiza automáticamente cada vez que el trabajo se modifica).
last_run_date int Fecha de inicio de la última ejecución del trabajo.
last_run_time int Hora de inicio de la última ejecución del trabajo.
last_run_outcome int Resultado del trabajo la última vez que se ejecutó:

0 = Error

1 = Correcto

3 = Cancelado

5 = Desconocido
next_run_date int Fecha de la próxima ejecución programada del trabajo.
next_run_time int Hora de la próxima ejecución programada del trabajo.
next_run_schedule_id int Número de identificación de la próxima ejecución programada.
current_execution_status int Estado de ejecución actual:

1 = Ejecución

2 = Esperando subproceso

3 = Entre reintentos

4 = Inactivo

5 = Suspendido

6 = Obsoleto

7 = PerformingCompletionActions
current_execution_step sysname Paso actual de ejecución del trabajo.
current_retry_attempt int Si el trabajo se está ejecutando y el paso se ha intentado más de una vez, es el número actual de reintentos.
has_step int Número de pasos que tiene el trabajo.
has_schedule int Número de programaciones que tiene el trabajo.
has_target int Número de servidores de destino que tiene el trabajo.
type int Tipo del trabajo.

1 = Trabajo local.

2 = Trabajo multiservidor.

0 = El trabajo no tiene servidores de destino.

Si se especifica job_id o job_name , sp_help_job devuelve estos conjuntos de resultados adicionales para los pasos de trabajo, las programaciones de trabajo y los servidores de destino del trabajo.

Éste es el conjunto de resultados de los pasos del trabajo.

Nombre de la columna Tipo de datos Descripción
step_id int Identificador único del paso (en este trabajo).
step_name sysname Nombre del paso.
Subsistema nvarchar(40) Subsistema en el que se ejecuta el comando del paso.
command nvarchar(3200) Comando que se ejecuta.
flags nvarchar(4000) Máscara de bits de valores que controlan el comportamiento de los pasos.
cmdexec_success_code int Para un paso cmdExec , este es el código de salida del proceso de un comando correcto.
on_success_action nvarchar(4000) Qué hacer si el paso termina correctamente:

1 = Salir con éxito.

2 = Salir con error.

3 = Vaya al paso siguiente.

4 = Ir al paso.
on_success_step_id int Si on_success_action es 4, indica el paso siguiente que se va a ejecutar.
on_fail_action nvarchar(4000) Acción que se realiza si el paso da error. Los valores son los mismos que para on_success_action.
on_fail_step_id int Si on_fail_action es 4, esto indica el paso siguiente que se va a ejecutar.
servidor sysname Reservado.
database_name sysname Para un paso de Transact-SQL, se trata de la base de datos en la que se ejecutará el comando.
database_user_name sysname Para un paso de Transact-SQL, se trata del contexto de usuario de la base de datos en el que se ejecuta el comando.
retry_attempts int Número máximo de veces que se vuelve a intentar el comando (si no termina correctamente) antes de determinar que el paso ha dado error.
retry_interval int Intervalo (en minutos) entre los reintentos.
os_run_priority varchar(4000) Reservado.
output_file_name varchar(200) Archivo en el que se debe escribir la salida del comando (solo pasos de Transact-SQL y CmdExec ).
last_run_outcome int Resultado del paso la última vez que se ejecutó:

0 = Error

1 = Correcto

3 = Cancelado

5 = Desconocido
last_run_duration int Duración (en segundos) del paso la última vez que se ejecutó.
last_run_retries int Número de veces que se ha intentado el comando desde que se ejecutó el paso por última vez.
last_run_date int Fecha en que se inició la ejecución del paso por última vez.
last_run_time int Hora en que se inició la ejecución del paso por última vez.
proxy_id int Proxy del paso de trabajo.

Éste es el conjunto de resultados de las programaciones del trabajo.

Nombre de la columna Tipo de datos Descripción
schedule_id int Identificador de la programación (único para todos los trabajos).
schedule_name sysname Nombre de la programación (único solo para este trabajo).
enabled int Si la programación está activa (1) o no (0).
freq_type int Valor que indica cuándo se va a ejecutar el trabajo:

1 = Una vez

4 = Diario

8 = Semanal

16 = Mensual

32 = Mensual, en relación con el freq_interval

64 = Ejecutar cuando se inicia el servicio SQLServerAgent .
freq_interval int Días en los que se ejecuta el trabajo. El valor depende del valor de freq_type. Para obtener más información, vea sp_add_schedule (Transact-SQL)
freq_subday_type Int Unidades para freq_subday_interval. Para obtener más información, vea sp_add_schedule (Transact-SQL)
freq_subday_interval int Número de períodos de freq_subday_type que se van a producir entre cada ejecución del trabajo. Para obtener más información, vea sp_add_schedule (Transact-SQL)
freq_relative_interval int La aparición del trabajo programado del freq_interval en cada mes. Para obtener más información, vea sp_add_schedule (Transact-SQL)
freq_recurrence_factor int Número de meses entre las ejecuciones programadas del trabajo.
active_start_date int Fecha en que empieza la ejecución del trabajo.
active_end_date int Fecha en que termina la ejecución del trabajo.
active_start_time int Hora de inicio de la ejecución del trabajo en active_start_date.
active_end_time int Tiempo de finalización de la ejecución del trabajo en active_end_date.
date_created datetime Fecha en que se creó la programación.
schedule_description nvarchar(4000) Descripción de la programación en inglés (si se solicita).
next_run_date int Fecha en que la programación hará que se vuelva a ejecutar el trabajo.
next_run_time int Hora a la que la programación hará que se vuelva a ejecutar el trabajo.
schedule_uid uniqueidentifier Identificador de la programación.
job_count int Devuelve el número de trabajos que hacen referencia a esta programación.

Éste es el conjunto de resultados de los servidores de destino del trabajo.

Nombre de la columna Tipo de datos Descripción
server_id int Identificador del servidor de destino.
server_name nvarchar(30) Nombre de equipo del servidor de destino.
enlist_date datetime Fecha de alta del servidor de destino en el servidor maestro.
last_poll_date datetime Fecha en que el servidor de destino sondeó por última vez el servidor maestro.
last_run_date int Fecha del inicio de la última ejecución del trabajo en este servidor de destino.
last_run_time int Hora del inicio de la última ejecución del trabajo en este servidor de destino.
last_run_duration int Duración de la última ejecución del trabajo en este servidor de destino.
last_run_outcome tinyint Resultado del trabajo la última vez que se ejecutó en este servidor:

0 = Error

1 = Correcto

3 = Cancelado

5 = Desconocido
last_outcome_message nvarchar(1024) Mensaje de resultado de la última ejecución del trabajo en este servidor de destino.

Permisos

De forma predeterminada, los miembros del rol fijo de servidor sysadmin pueden ejecutar este procedimiento almacenado. Al resto de usuarios se les debe conceder uno de los siguientes roles fijos de base de datos del Agente SQL Server en la base de datos msdb :

  • SQLAgentUserRole

  • SQLAgentReaderRole

  • SQLAgentOperatorRole

Para detalles sobre los permisos de estos roles, consulte Roles fijos de base de datos del Agente SQL Server.

Los miembros de SQLAgentUserRole solo pueden ver los trabajos que poseen. Los miembros de sysadmin, SQLAgentReaderRole y SQLAgentOperatorRole pueden ver todos los trabajos locales y multiservidor.

Ejemplos

A. Mostrar información de todos los trabajos

Este ejemplo ejecuta el procedimiento sp_help_job sin parámetros para obtener la información de todos los trabajos actualmente definidos en la base de datos msdb.

USE msdb ;  
GO  
  
EXEC dbo.sp_help_job ;  
GO  

B. Mostrar información de los trabajos que coinciden con un criterio específico

En el siguiente ejemplo se muestra información sobre el trabajo para los trabajos multiservidor que pertenecen a françoisa, donde el trabajo se habilita y ejecuta.

USE msdb ;  
GO  
  
EXEC dbo.sp_help_job   
   @job_type = N'MULTI-SERVER',  
   @owner_login_name = N'françoisa',  
   @enabled = 1,  
   @execution_status = 1 ;  
GO  

C. Mostrar todos los aspectos de la información de un trabajo

En el siguiente ejemplo se muestran todos los aspectos de la información para el trabajo NightlyBackups.

USE msdb ;  
GO  
  
EXEC dbo.sp_help_job  
    @job_name = N'NightlyBackups',  
    @job_aspect = N'ALL' ;  
GO  

Consulte también

sp_add_job (Transact-SQL)
sp_delete_job (Transact-SQL)
sp_update_job (Transact-SQL)
Procedimientos almacenados del sistema (Transact-SQL)