sys.sysprocesses (Transact-SQL)

Aplica-se a: SQL Server

Contém informações sobre processos que estão sendo executados em uma instância do SQL Server. Eles podem ser processos do cliente ou processos do sistema. Para acessar sysprocesses, você deve estar no contexto do banco de dados mestre ou deve usar o nome de três partes master.dbo.sysprocesses.

Importante

Esta tabela do sistema do SQL Server 2000 foi incluída como uma exibição para compatibilidade com versões anteriores. É recomendável usar as exibições do sistema do SQL Server atual. Para localizar um ou mais modos de exibição do sistema equivalentes, confira Mapeando tabelas do sistema para exibições do sistema (Transact-SQL). Esse recurso será removido em uma versão futura do Microsoft SQL Server. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.

Nome da coluna Tipo de dados Descrição
spid smallint ID da sessão do SQL Server.
kpid smallint ID do thread do Windows.
bloqueado smallint ID da sessão que está bloqueando a solicitação. Se esta coluna for NULL, a solicitação não estará bloqueada ou as informações da sessão de bloqueio não estarão disponíveis (ou não podem ser identificadas).

-2 = O recurso de bloqueio pertence a uma transação distribuída órfã.

-3 = O recurso de bloqueio pertence a uma transação de recuperação adiada.

-4 = A ID da sessão do proprietário da trava de bloqueio não pôde ser determinada devido a transições internas de estado da trava.
waittype binary(2) Reservado.
waittime bigint Tempo de espera atual em milissegundos.

0 = O processo não está esperando.
lastwaittype nchar(32) Uma cadeia de caracteres que indica o nome do tipo de espera último ou atual.
waitresource nchar(256) Representação textual de um recurso de bloqueio.
dbid smallint ID do banco de dados usado atualmente pelo processo.
uid smallint ID do usuário que executou o comando. Excederá ou retornará NULL se o número de usuários e funções exceder 32.767.
cpu int Tempo de CPU cumulativo para o processo. A entrada é atualizada para todos os processos, independentemente da opção SET STATISTICS TIME ser ON ou OFF.
physical_io bigint Leituras e gravações de disco cumulativas para o processo.
memusage int Número de páginas no cache de procedimento que estão atualmente alocadas para este processo. Um número negativo indica que o processo está liberando memória alocada por outro processo.
login_time datetime Hora na qual um processo de cliente efetuou logon no servidor.
last_batch datetime Última vez que um processo de cliente executou uma chamada de procedimento armazenado remoto ou uma instrução EXECUTE.
ecid smallint ID do contexto de execução usado para identificar exclusivamente os subthreads que operam em nome de um único processo.
open_tran smallint Número de transações abertas para o processo.
status nchar(30) Status do ID do processo. Os valores possíveis são:

dormant = SQL Server está redefinindo a sessão.

running = A sessão está executando um ou mais lotes. Quando são habilitados MARS (Vários Conjuntos de Resultados Ativos), uma sessão pode executar vários lotes. Para obter mais informações, consulte Usando MARS (vários conjuntos de resultados ativos).

background = A sessão está executando uma tarefa em segundo plano, como detecção de deadlock.

rollback = A sessão tem uma reversão de transação em andamento.

pending = A sessão está aguardando a disponibilização de um thread de trabalho.

runnable = A tarefa na sessão está na fila executável de um agendador enquanto aguarda para obter um quantum de tempo.

spinloop = A tarefa na sessão está aguardando que um spinlock fique livre.

suspended = A sessão está aguardando a conclusão de um evento, como E/S.
sid binary(86) GUID (Identificador Global Exclusivo) do usuário.
hostname nchar(128) Nome da estação de trabalho.
program_name nchar(128) Nome do programa aplicativo.
hostprocess nchar(10) Número de ID do processo da estação de trabalho.
cmd nchar(52) Comando sendo executado atualmente.
nt_domain nchar(128) Domínio do Windows do cliente, se estiver usando Autenticação do Windows, ou uma conexão confiável.
nt_username nchar(128) Nome de usuário do Windows para o processo, se estiver usando Autenticação do Windows, ou uma conexão confiável.
net_address nchar(12) Identificador exclusivo atribuído para o adaptador de rede na estação de trabalho de cada usuário. Quando um usuário fizer o logon, este identificador será inserido na coluna net_address.
net_library nchar(12) Coluna na qual a biblioteca de rede do cliente é armazenada. Todo processo de cliente entra em uma conexão de rede. As conexões de rede têm uma biblioteca de rede associada a elas que as permite estabelecer a conexão.
loginame nchar(128) Nome de logon.
context_info binary(128) Dados armazenados em um lote usando a instrução SET CONTEXT_INFO.
sql_handle binary(20) Representa o lote ou o objeto atualmente em execução.

Observação Esse valor é derivado do endereço de lote ou memória do objeto. Esse valor não é calculado usando o algoritmo baseado em hash do SQL Server.
stmt_start int Deslocamento inicial da instrução SQL atual para o sql_handle especificado.
stmt_end int Deslocamento final da instrução SQL atual para o sql_handle especificado.

-1 = A instrução atual é executada até o final dos resultados retornados pela função fn_get_sql do sql_handle especificado.
request_id int ID da solicitação. Usado para identificar solicitações em execução em uma sessão específica.
page_resource binary(8) Aplica-se a: SQL Server 2019 (15.x)

Uma representação hexadecimal em 8 bytes do recurso de página se a coluna waitresource contiver uma página.

Comentários

Se um usuário tiver a permissão VIEW SERVER STATE no servidor, o usuário verá todas as sessões em execução na instância do SQL Server; caso contrário, o usuário verá apenas a sessão atual.

Confira também

Funções e exibições de gerenciamento dinâmico relacionadas à execução (Transact-SQL)
Mapeando tabelas do sistema para exibições do sistema (Transact-SQL)
exibições de compatibilidade (Transact-SQL)