Condividi tramite


sys.sysprocesses (Transact-SQL)

Si applica a: SQL Server

Contiene informazioni sui processi in esecuzione in un'istanza di SQL Server. Questi processi possono essere processi client o di sistema. Per accedere a sysprocesses, è necessario trovarsi nel contesto del database master oppure utilizzare il nome in tre parti master.dbo.sysprocesses.

Importante

Questa tabella di sistema di SQL Server 2000 è disponibile come vista per compatibilità con le versioni precedenti. È consigliabile usare invece le viste di sistema correnti di SQL Server. Per trovare la vista o le viste di sistema equivalenti, vedere Mapping delle tabelle di sistema alle viste di sistema (Transact-SQL). Questa funzionalità verrà rimossa a partire da una delle prossime versioni di Microsoft SQL Server. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata.

Nome colonna Tipo di dati Descrizione
spid smallint ID sessione di SQL Server.
kpid smallint ID del thread di Windows.
bloccato smallint ID della sessione che sta bloccando la richiesta. Se questa colonna è NULL, la richiesta non è bloccata oppure non sono disponibili o identificabili informazioni di sessione per la sessione da cui è bloccata.

-2 = La risorsa di blocco appartiene a una transazione distribuita orfana.

-3 = La risorsa di blocco appartiene a una transazione di recupero posticipata.

-4 = Non è possibile determinare l'ID di sessione del proprietario del latch di blocco a causa di transizioni nello stato del latch interno.
waittype binary(2) Riservato.
waittime bigint Tempo di attesa corrente espresso in millisecondi.

0 = Il processo non è in attesa.
lastwaittype nchar(32) Stringa che indica il nome del tipo di attesa più recente o corrente.
waitresource nchar(256) Rappresentazione testuale di una risorsa di blocco.
dbid smallint ID del database attualmente utilizzato dal processo.
uid smallint ID dell'utente che ha eseguito il comando. Causa un errore di overflow o restituisce NULL se il numero di utenti e ruoli è maggiore di 32.767.
cpu int Tempo CPU totale per il processo. La voce viene aggiornata per tutti i processi, indipendentemente dal fatto che l'opzione SET STATISTICS TIME sia impostata su ON o OFF.
physical_io bigint Numero totale di letture da disco e scritture su disco per il processo.
memusage int Numero di pagine della cache delle procedure attualmente assegnate al processo. Un numero negativo indica che il processo sta liberando la memoria allocata da un altro processo.
login_time datetime Ora dell'accesso al server di un processo client.
last_batch datetime Ora dell'ultima esecuzione di una chiamata a una stored procedure remota o di un'istruzione EXECUTE da parte di un processo client.
ecid smallint ID del contesto di esecuzione utilizzato per identificare in modo univoco i thread secondari utilizzati per conto di un unico processo.
open_tran smallint Numero di transazioni aperte per il processo.
stato nchar(30) Stato dell'ID del processo. I valori possibili sono:

dormant = SQL Server sta reimpostando la sessione.

running = La sessione esegue uno o più batch. Se si abilita la funzionalità MARS (Multiple Active Result Sets), una sessione può eseguire più batch. Per altre informazioni, vedere Uso di MARS (Multiple Active Result Set).

background = La sessione esegue un'attività in background, ad esempio il rilevamento dei deadlock.

rollback = La sessione ha un rollback delle transazioni in corso.

in sospeso = La sessione è in attesa che un thread di lavoro diventi disponibile.

runnable = L'attività nella sessione si trova nella coda eseguibile di un'utilità di pianificazione durante l'attesa di ottenere un quantum temporale.

spinloop = L'attività nella sessione è in attesa che uno spinlock diventi libero.

suspended = La sessione è in attesa del completamento di un evento, ad esempio I/O.
sid binary(86) Identificatore univoco globale (GUID, Globally Unique Identifier) per l'utente.
hostname nchar(128) Nome della workstation.
program_name nchar(128) Nome dell'applicazione.
hostprocess nchar(10) Numero di ID del processo della workstation.
cmd nchar(52) Comando in fase di esecuzione.
nt_domain nchar(128) Dominio di Windows per il client, se si utilizza l'autenticazione di Windows, o connessione trusted.
nt_username nchar(128) Nome utente di Windows per il processo, se si utilizza l'autenticazione di Windows, o connessione trusted.
net_address nchar(12) Identificatore univoco assegnato alla scheda di rete della workstation di ogni utente. Quando un utente esegue l'accesso, questo identificatore viene inserito nella colonna net_address.
net_library nchar(12) Colonna in cui viene archiviata la libreria di rete del client. Ogni processo client utilizza una connessione di rete. Le connessioni di rete sono associate a una libreria di rete che consente di stabilire la connessione.
loginame nchar(128) Nome dell'account di accesso.
context_info binary(128) Dati archiviati in un batch tramite l'istruzione SET CONTEXT_INFO.
sql_handle binary(20) Rappresenta il batch o l'oggetto attualmente in esecuzione.

Nota Questo valore è derivato dall'indirizzo batch o di memoria dell'oggetto. Questo valore non viene calcolato usando l'algoritmo basato su hash di SQL Server.
stmt_start int Offset iniziale dell'istruzione SQL corrente per il valore di sql_handle specificato.
stmt_end int Offset finale dell'istruzione SQL corrente per il valore di sql_handle specificato.

-1 = L'istruzione corrente viene eseguita fino alla fine dei risultati restituiti dalla funzione fn_get_sql per il valore di sql_handle specificato.
request_id int ID della richiesta. Utilizzato per identificare le richieste in esecuzione in una sessione specifica.
page_resource binary(8) Si applica a: SQL Server 2019 (15.x)

Rappresentazione esadecimale a 8 byte della risorsa di pagina se la waitresource colonna contiene una pagina.

Osservazioni:

Se un utente dispone dell'autorizzazione VIEW SERVER STATE per il server, l'utente visualizzerà tutte le sessioni in esecuzione nell'istanza di SQL Server; in caso contrario, l'utente visualizzerà solo la sessione corrente.

Vedi anche

Funzioni e viste a gestione dinamica relative all'esecuzione (Transact-SQL)
Mapping delle tabelle di sistema alle viste di sistema (Transact-SQL)
Visualizzazione Compatibilità (Transact-SQL)