SQL Server简洁查询正在运营的进度

       平日我们能够使用

sp_who2

      
大家期待特别简洁的消息,上面这些查询利用系统表sys.sysprocesses,以及sys.dm_exec_sql_text做OUTER
APPLY. T-SQL是那般的:

SELECT   spid,
         blocked,
         DB_NAME(sp.dbid) AS DBName,
         program_name,
         waitresource,
         lastwaittype,
         sp.loginame,
         sp.hostname,
         a.[Text] AS [TextData],
         SUBSTRING(A.text, sp.stmt_start / 2, 
         (CASE WHEN sp.stmt_end = -1 THEN DATALENGTH(A.text) ELSE sp.stmt_end 
         END - sp.stmt_start) / 2) AS [current_cmd]
FROM     sys.sysprocesses AS sp OUTER APPLY sys.dm_exec_sql_text (sp.sql_handle) AS A
WHERE    spid > 50
ORDER BY blocked DESC, DB_NAME(sp.dbid) ASC, a.[text];

     
您或者注意到过滤了spid小于50的,那里有TextData,Current_cmd两列,能够列出当前DataBase执的SQL文本,当然你得到spid就能够使用更加多的询问。
      以便于你一定阻塞的历程。

      希望对您有帮衬。

     
      您或者感兴趣小说的:

     
多少个有效的T-SQL(1)

     
列出Server上5张最大的表

      更多

作者:Petter Liu
出处:http://www.cnblogs.com/wintersun/
本文版权归小编和网易共有,欢迎转发,但未经作者同意必须保留此段注解,且在作品页面显著地点给出原文连接,不然保留追究法律权利的职务。
该文章也还要宣布在笔者的独门博客中-Petter Liu
Blog

相关文章