加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

查看SQLSERVER当前正在执行的sql信息

发布时间:2020-12-12 13:10:33 所属栏目:MsSql教程 来源:网络整理
导读:可以使用SQL Profiler捕捉在SQL Server实例上执行的活动。这样的活动被称为Profiler跟踪。这个就不多说了,大家都知道,下面是使用代码为实现相同的效果。 SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED SELECT [Spid] = session_id,ecid,[Database] =

可以使用SQL Profiler捕捉在SQL Server实例上执行的活动。这样的活动被称为Profiler跟踪。这个就不多说了,大家都知道,下面是使用代码为实现相同的效果。

SET TRANSACTION ISOLATION LEVEL READ UNCOMMITTED

 SELECT  [Spid] = session_id,ecid,[Database] = DB_NAME(sp.dbid),[User] = nt_username,[Status] = er.status,[Wait] = wait_type,[Individual Query] = SUBSTRING(qt.text,er.statement_start_offset / 2,( CASE WHEN er.statement_end_offset = -1
                                                  THEN LEN(CONVERT(NVARCHAR(MAX),qt.text))
                                                       * 2
                                                  ELSE er.statement_end_offset
                                             END - er.statement_start_offset )
                                           / 2),[Parent Query] = qt.text,Program = program_name,hostname,nt_domain,start_time
    FROM    sys.dm_exec_requests er
            INNER JOIN sys.sysprocesses sp ON er.session_id = sp.spid
            CROSS APPLY sys.dm_exec_sql_text(er.sql_handle) AS qt
    WHERE   session_id > 50 -- Ignore system spids.
            AND session_id NOT IN ( @@SPID ) -- Ignore this current statement.
ORDER BY    1,2

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读