| |
This
is a 2005 sort of sp_who3,
which'll return connection info as well as the running command.
Also included is the SQL
Server 2000 equivalent and also a means of seeing zero cost plans.
/********* live requests (running ones) *************/
SELECT
st.text
as
[Command text],
login_time,
[host_name],
program_name,
sys.dm_exec_requests.session_id,
client_net_address,
sys.dm_exec_requests.status,
command,
db_name(database_id)
as
DatabaseName
FROM
sys.dm_exec_requests
inner
join
sys.dm_exec_connections
on
sys.dm_exec_requests.session_id
=
sys.dm_exec_connections.session_id
inner
join
sys.dm_exec_sessions
on
sys.dm_exec_sessions.session_id
=
sys.dm_exec_requests.session_id
cross
apply
sys.dm_exec_sql_text(sql_handle)
AS st
WHERE
sys.dm_exec_requests.session_id
>= 51
GO
/********* use against a spid to check TSQL - limited to 255
chars *************/
/********* use sp_who3 to run this on all processes
*************/
dbcc inputbuffer(myspid)
/********* returns upto 800 characters *************/
/********* use DBCC TRACEON (2861) to cache and see zero cost
plans also *************/
DECLARE @handle
binary(20)
SELECT @handle
= sql_handle
FROM
master..sysprocesses
WHERE
spid =
myspid
SELECT
*
FROM
::fn_get_sql(@handle)
|
|