sp_help_job (Transact-SQL)
Si applica a:SQL Server
Restituisce informazioni sui processi usati da SQL Server Agent per eseguire attività automatizzate in SQL Server.
Convenzioni di sintassi Transact-SQL
Sintassi
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' ]
Argomenti
[ @job_id = ] job_id
Numero di identificazione del processo. job_id è uniqueidentifier, con un valore predefinito NULL.
[ @job_name = ] 'job_name'
Nome del processo. job_name è sysname, con valore predefinito NULL.
Nota
Per visualizzare un processo specifico, è necessario specificare job_id o job_name . Omettere sia job_id che job_name per restituire informazioni su tutti i processi.
[ @job_aspect = ] 'job_aspect'
Attributo del processo da visualizzare. job_aspect è varchar(9), con un valore predefinito NULL e può essere uno di questi valori.
Valore | Descrizione |
---|---|
ALL | Informazioni sugli attributi del processo |
LAVORO | Informazioni posizione lavorativa |
ORARI | Informazioni sulla pianificazione |
PASSI | Informazioni sui passaggi del processo |
OBIETTIVI | Informazioni sul server di destinazione |
[ @job_type = ] 'job_type'
Tipo di processi da includere nel report. job_type è varchar(12), con valore predefinito NULL. job_type può essere LOCALE o MULTISERVER.
[ @owner_login_name = ] 'login_name'
Nome dell'account di accesso del proprietario del processo. login_name è sysname, con un valore predefinito NULL.
[ @subsystem = ] 'subsystem'
Nome del sottosistema. sottosistema è nvarchar(40), con un valore predefinito NULL.
[ @category_name = ] 'category'
Nome della categoria. category è sysname, con un valore predefinito NULL.
[ @enabled = ] enabled
Numero che indica se vengono visualizzate informazioni per i processi abilitati o i processi disabilitati. enabled è tinyint, con un valore predefinito NULL. 1 indica i processi abilitati e 0 indica i processi disabilitati.
[ @execution_status = ] status
Stato di esecuzione per i processi. status è int, con un valore predefinito NULL e può essere uno di questi valori.
Valore | Descrizione |
---|---|
0 | Restituisce solo i processi non inattivi o sospesi. |
1 | In esecuzione. |
2 | In attesa di un thread. |
3 | Tra due tentativi. |
4 | Operazione inattiva. |
5 | Sospeso. |
7 | Esecuzione delle azioni finali in corso. |
[ @date_comparator = ] 'date_comparison'
Operatore di confronto da usare nei confronti di date_created e date_modified. date_comparison è char(1)e può essere =, <o >.
[ @date_created = ] date_created
Data di creazione del processo. date_created è datetime, con valore predefinito NULL.
[ @date_last_modified = ] date_modified
Data dell'ultima modifica del processo. date_modified è datetime, con valore predefinito NULL.
[ @description = ] 'description_pattern'
Descrizione del processo. description_pattern è nvarchar(512), con valore predefinito NULL. description_pattern può includere i caratteri jolly di SQL Server per la corrispondenza dei criteri.
Valori del codice restituito
0 (esito positivo) o 1 (errore)
Set di risultati
Se non vengono specificati argomenti, sp_help_job restituisce questo set di risultati.
Nome colonna | Tipo di dati | Descrizione |
---|---|---|
job_id | uniqueidentifier | ID univoco del processo. |
originating_server | nvarchar(30) | Nome del server di provenienza del processo. |
name | sysname | Nome del processo. |
abilitata | tinyint | Indica se il processo è abilitato per l'esecuzione. |
description | nvarchar(512) | Descrizione del processo. |
start_step_id | int | ID del passaggio del processo da cui deve iniziare l'esecuzione. |
category | sysname | Categoria del processo. |
owner | sysname | Proprietario del processo. |
notify_level_eventlog | int | Maschera di bit che indica in quali circostanze deve essere registrato un evento di notifica nel registro applicazioni di Microsoft Windows. I possibili valori sono i seguenti: 0 = Mai 1 = Quando un processo ha esito positivo 2 = Quando il processo ha esito negativo 3 = Ogni volta che il processo viene completato (indipendentemente dal risultato del processo) |
notify_level_email | int | Maschera di bit che indica in quali circostanze deve essere inviato un messaggio di posta elettronica di notifica al termine di un processo. I valori possibili sono uguali a per notify_level_eventlog. |
notify_level_netsend | int | Maschera di bit che indica in quali circostanze deve essere inviato un messaggio di rete al termine di un processo. I valori possibili sono uguali a per notify_level_eventlog. |
notify_level_page | int | Maschera di bit che indica in quali circostanze deve essere inviata una pagina al termine di un processo. I valori possibili sono uguali a per notify_level_eventlog. |
notify_email_operator | sysname | Nome di posta elettronica dell'operatore a cui inviare la notifica. |
notify_netsend_operator | sysname | Nome di computer o di utente specificato quando si invia un messaggio in rete. |
notify_page_operator | sysname | Nome di computer o di utente specificato quando si invia un messaggio su cercapersone. |
delete_level | int | Maschera di bit che indica in quali circostanze il processo deve essere eliminato al termine di un processo. I valori possibili sono uguali a per notify_level_eventlog. |
date_created | datetime | Data di creazione del processo. |
date_modified | datetime | Data dell'ultima modifica del processo. |
version_number | int | Versione del processo aggiornata automaticamente in corrispondenza di ogni modifica del processo. |
last_run_date | int | Data dell'ultimo avvio dell'esecuzione del processo. |
last_run_time | int | Ora dell'ultimo avvio dell'esecuzione del processo. |
last_run_outcome | int | Risultato dell'ultima esecuzione del processo: 0 = Non riuscito 1 = Operazione completata 3 = Annullato 5 = Sconosciuto |
next_run_date | int | Data pianificata per la successiva esecuzione del processo. |
next_run_time | int | Ora pianificata per la successiva esecuzione del processo. |
next_run_schedule_id | int | ID della successiva pianificazione di esecuzione. |
current_execution_status | int | Stato di esecuzione corrente: 1 = Esecuzione 2 = In attesa di thread 3 = Tra tentativi 4 = Inattiva 5 = Sospeso 6 = Obsoleto 7 = PerformingCompletionActions |
current_execution_step | sysname | Passaggio di esecuzione corrente all'interno del processo. |
current_retry_attempt | int | Se il processo è in esecuzione e il passaggio è stato ripetuto, indica il numero del tentativo in corso. |
has_step | int | Numero di passaggi del processo. |
has_schedule | int | Numero di pianificazioni del processo. |
has_target | int | Numero di server di destinazione del processo. |
type | int | Tipo del processo. 1 = Processo locale. 2 = Processo multiserver. 0 = Il processo non dispone di server di destinazione. |
Se si specifica job_id o job_name , sp_help_job restituisce questi set di risultati aggiuntivi per i passaggi dei processi, le pianificazioni dei processi e i server di destinazione del processo.
Il set di risultati per i passaggi del processo è il seguente.
Nome colonna | Tipo di dati | Descrizione |
---|---|---|
step_id | int | Identificatore univoco (all'interno del processo) del passaggio. |
step_name | sysname | Nome del passaggio. |
Sottosistema | nvarchar(40) | Sottosistema in cui eseguire il comando del passaggio. |
command | nvarchar(3200) | Comando da eseguire. |
flags | nvarchar(4000) | Maschera di bit di valori che controllano il comportamento dei passaggi. |
cmdexec_success_code | int | Per un passaggio CmdExec , si tratta del codice di uscita del processo di un comando riuscito. |
on_success_action | nvarchar(4000) | Azione da eseguire se il passaggio viene eseguito correttamente: 1 = Uscire con esito positivo. 2 = Uscire con errore. 3 = Andare al passaggio successivo. 4 = Andare al passaggio. |
on_success_step_id | int | Se on_success_action è 4, indica il passaggio successivo da eseguire. |
on_fail_action | nvarchar(4000) | Azione da eseguire se il passaggio non viene eseguito correttamente. I valori sono uguali a per on_success_action. |
on_fail_step_id | int | Se on_fail_action è 4, indica il passaggio successivo da eseguire. |
server | sysname | Riservato. |
database_name | sysname | Per un passaggio Transact-SQL, si tratta del database in cui verrà eseguito il comando. |
database_user_name | sysname | Per un passaggio Transact-SQL, si tratta del contesto utente del database in cui viene eseguito il comando. |
retry_attempts | int | Numero massimo di tentativi di esecuzione del comando (nel caso in cui non sia stato eseguito correttamente) oltre il quale il passaggio viene considerato errato. |
retry_interval | int | Intervallo di tempo in minuti che intercorre tra un tentativo e il successivo. |
os_run_priority | varchar(4000) | Riservato. |
output_file_name | varchar(200) | File in cui scrivere l'output del comando (solo passaggi Transact-SQL e CmdExec ). |
last_run_outcome | int | Risultato dell'ultima esecuzione del passaggio: 0 = Non riuscito 1 = Operazione completata 3 = Annullato 5 = Sconosciuto |
last_run_duration | int | Durata in secondi dell'ultima esecuzione del passaggio. |
last_run_retries | int | Numero di tentativi di esecuzione del comando durante l'ultima esecuzione del passaggio. |
last_run_date | int | Data di inizio dell'ultima esecuzione del passaggio. |
last_run_time | int | Ora di inizio dell'ultima esecuzione del passaggio. |
proxy_id | int | Proxy per il passaggio del processo. |
Il set di risultati per le pianificazioni del processo è il seguente.
Nome colonna | Tipo di dati | Descrizione |
---|---|---|
schedule_id | int | ID della pianificazione, univoco per tutti i processi. |
schedule_name | sysname | Nome della pianificazione, univoco soltanto per il processo specificato. |
abilitata | int | Indica se la pianificazione è attiva (1) o meno (0). |
freq_type | int | Valore che indica la frequenza di esecuzione del processo: 1 = Una volta 4 = Giornaliero 8 = Settimanale 16 = Mensile 32 = Mensile, rispetto al freq_interval 64 = Eseguire all'avvio del servizio SQLServerAgent . |
freq_interval | int | Giorni in cui viene eseguito il processo. Il valore dipende dal valore di freq_type. Per altre informazioni, vedere sp_add_schedule (Transact-SQL) |
freq_subday_type | Int | Unità per freq_subday_interval. Per altre informazioni, vedere sp_add_schedule (Transact-SQL) |
freq_subday_interval | int | Numero di periodi di freq_subday_type da eseguire tra ogni esecuzione del processo. Per altre informazioni, vedere sp_add_schedule (Transact-SQL) |
freq_relative_interval | int | Occorrenza del processo pianificato del freq_interval in ogni mese. Per altre informazioni, vedere sp_add_schedule (Transact-SQL) |
freq_recurrence_factor | int | Numero di mesi tra l'esecuzione pianificata del processo. |
active_start_date | int | Data di inizio dell'esecuzione del processo. |
active_end_date | int | Data di fine dell'esecuzione del processo. |
active_start_time | int | Ora di inizio dell'esecuzione del processo in active_start_date. |
active_end_time | int | Tempo per terminare l'esecuzione del processo in active_end_date. |
date_created | datetime | Data di creazione della pianificazione. |
schedule_description | nvarchar(4000) | Descrizione in inglese della pianificazione, se richiesta. |
next_run_date | int | Data della successiva esecuzione del processo in base alla pianificazione. |
next_run_time | int | Ora della successiva esecuzione del processo in base alla pianificazione. |
schedule_uid | uniqueidentifier | Identificatore della pianificazione. |
job_count | int | Restituisce il numero di processi che fanno riferimento a questa pianificazione. |
Il set di risultati per i server di destinazione del processo è il seguente.
Nome colonna | Tipo di dati | Descrizione |
---|---|---|
server_id | int | ID del server di destinazione. |
server_name | nvarchar(30) | Nome di computer del server di destinazione. |
enlist_date | datetime | Data di integrazione del server di destinazione nel server master. |
last_poll_date | datetime | Data dell'ultimo polling del server master eseguito dal server di destinazione. |
last_run_date | int | Data di inizio dell'ultima esecuzione del processo nel server di destinazione. |
last_run_time | int | Ora di inizio dell'ultima esecuzione del processo nel server di destinazione. |
last_run_duration | int | Durata dell'ultima esecuzione del processo nel server di destinazione. |
last_run_outcome | tinyint | Risultato dell'ultima esecuzione del processo nel server specificato: 0 = Non riuscito 1 = Operazione completata 3 = Annullato 5 = Sconosciuto |
last_outcome_message | nvarchar(1024) | Messaggio visualizzato dopo l'ultima esecuzione del processo nel server di destinazione. |
Autorizzazioni
Per impostazione predefinita, questa stored procedure può essere eseguita dai membri del ruolo predefinito del server sysadmin . Gli altri utenti devono appartenere a uno dei seguenti ruoli predefiniti del database di SQL Server Agent nel database msdb:
SQLAgentUserRole
SQLAgentReaderRole
SQLAgentOperatorRole
Per informazioni dettagliate sulle autorizzazioni di questi ruoli, vedere Ruoli di database predefiniti di SQL Server Agent.
I membri di SQLAgentUserRole possono visualizzare solo i processi di cui sono proprietari. I membri di sysadmin, SQLAgentReaderRole e SQLAgentOperatorRole possono visualizzare tutti i processi locali e multiserver.
Esempi
R. Visualizzazione di un elenco di informazioni per tutti i processi
Nell'esempio seguente la stored procedure sp_help_job
viene eseguita senza parametri in modo da ottenere informazioni su tutti i processi definiti nel database msdb
.
USE msdb ;
GO
EXEC dbo.sp_help_job ;
GO
B. Visualizzazione di un elenco di informazioni per i processi che corrispondono a un criterio specifico
Nell'esempio seguente viene visualizzato un elenco di informazioni per i processi multiserver di cui è proprietario françoisa
dove il processo è attivato e in fase di esecuzione.
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. Visualizzazione di un elenco di tutte le informazioni per un processo
Nell'esempio seguente viene visualizzato un elenco di tutti gli aspetti correlati alle informazioni per il processo NightlyBackups
.
USE msdb ;
GO
EXEC dbo.sp_help_job
@job_name = N'NightlyBackups',
@job_aspect = N'ALL' ;
GO
Vedi anche
sp_add_job (Transact-SQL)
sp_delete_job (Transact-SQL)
sp_update_job (Transact-SQL)
Stored procedure di sistema (Transact-SQL)
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: nel corso del 2024 verranno dismessi i problemi di GitHub come meccanismo di feedback per il contenuto e verranno sostituiti con un nuovo sistema di feedback. Per altre informazioni, vedere:Invia e visualizza il feedback per