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)