28 abril, 2014

MSSQL - Ver a consulta que está sendo executado pelo pid

--MSSQL - Ver a consulta que está sendo executado pelo pid
--Consulta query pelo pid

declare
   @spid int
,   @stmt_start int
,   @stmt_end int
,   @sql_handle binary(20)

set @spid = 1 -- Valor do pid

select  top 1
   @sql_handle = sql_handle
,   @stmt_start = case stmt_start when 0 then 0 else stmt_start / 2 end
,   @stmt_end = case stmt_end when -1 then -1 else stmt_end / 2 end
from    master.dbo.sysprocesses
where   spid = @spid
order by ecid

SELECT
   SUBSTRING( text,
    COALESCE(NULLIF(@stmt_start, 0), 1),
    CASE @stmt_end
    WHEN -1
    THEN DATALENGTH(text)
    ELSE
    (@stmt_end - @stmt_start)
    END
    )
FROM ::fn_get_sql(@sql_handle)

Fonte: http://stackoverflow.com/questions/941763/list-the-queries-running-on-sql-server

Nenhum comentário: