sys.sysprocesses (Transact-SQL)

Data aggiornamento: 14 aprile 2006

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

ms179881.note(it-it,SQL.90).gifImportante:
Questa tabella di sistema di SQL Server 2000 è disponibile come vista per compatibilità con le versioni precedenti. È invece consigliabile utilizzare le viste di sistema correnti di SQL Server. Per individuare la vista o le viste di sistema equivalenti, vedere Mapping delle tabelle di sistema di SQL Server 2000 alle viste di sistema di SQL Server 2005. Questa funzionalità verrà rimossa in una delle prossime versioni di Microsoft SQL Server. Evitare di utilizzare 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 di sessione di SQL Server.

kpid

smallint

ID del thread di Microsoft Windows.

blocked

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)

Riservata.

waittime

bigint

Periodo di attesa 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(32)

Rappresentazione in formato testo di una risorsa di blocco.

dbid

smallint

ID del database 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. Per ulteriori informazioni, vedere Esecuzione di query nel catalogo di sistema di SQL Server.

cpu

int

Tempo della CPU totale per il processo. Il valore viene aggiornato per tutti i processi, indipendentemente dal fatto che l'opzione SET STATISTICS TIME sia impostata su ON o OFF.

physical_io

int

Numero totale di letture 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. Per i processi di sistema viene archiviata l'ora di avvio di SQL Server.

last_batch

datetime

Ora dell'ultima chiamata a una stored procedure o istruzione EXECUTE eseguita da un processo client. Per i processi di sistema viene archiviata l'ora di avvio di SQL Server.

ecid

smallint

ID del contesto di esecuzione utilizzato per identificare in modo univoco i subthread utilizzati da un unico processo.

open_tran

smallint

Numero di transazioni aperte per il processo.

status

nchar(30)

Stato dell'ID del processo, I possibili valori sono:

dormant = SQL Server sta reimpostando la sessione.

running = Nella sessione vengono eseguiti uno o più batch. Se si attiva MARS (Multiple Active Result Sets), la sessione può eseguire più batch. Per ulteriori informazioni, vedere Using Multiple Active Result Sets (MARS).

background = Nella sessione viene eseguita un'attività in background, ad esempio il rilevamento dei deadlock.

rollback = Nella sessione è in corso il rollback di una transazione.

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

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

spinloop = L'attività della sessione è in attesa che venga liberato uno spinlock.

suspended = La sessione è in attesa del completamento di un evento, ad esempio di 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(16)

Comando in fase di esecuzione.

nt_domain

nchar(128)

Dominio di Microsoft 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 interfaccia di rete della workstation di ogni utente. Quando un utente si connette, 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 proviene da una connessione di rete. Le connessioni di rete sono associate a una libreria di rete che consente di stabilire la connessione. Per ulteriori informazioni, vedere Protocolli di rete ed endpoint TDS.

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 in esecuzione.

Nota   Questo valore è derivato dal batch o dall'indirizzo di memoria dell'oggetto e non viene calcolato tramite l'algoritmo basato su hash di SQL Server 2005.

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.

request_id

int

ID della richiesta. Utilizzato per identificare le richieste in esecuzione in una sessione specifica.

Osservazioni

Se si dispone dell'autorizzazione VIEW SERVER STATE per il server, è possibile visualizzare tutte le sessioni in esecuzione nell'istanza di SQL Server. In caso contrario, è possibile visualizzare solo la sessione corrente.

Vedere anche

Riferimento

Mapping delle tabelle di sistema di SQL Server 2000 alle viste di sistema di SQL Server 2005
Viste di compatibilità (Transact-SQL)

Guida in linea e informazioni

Assistenza su SQL Server 2005

Cronologia modifiche

Versione

Cronologia

14 aprile 2006

Nome

Definizione

Nuovo contenuto:

  • Aggiunta di informazioni in sql_handle sulla modalità di calcolo di questo valore.

5 dicembre 2005

Termine

Definizione

Contenuto modificato

  • Approfondimento delle definizioni della colonna blocked.
  • Approfondimento delle definizioni della colonna status.