在MS SQL Server中怎么查看正在执行的SQL

 我来答
greystar_cn
推荐于2016-10-28 · 知道合伙人软件行家
greystar_cn
知道合伙人软件行家
采纳数:16407 获赞数:17260
本人主要从事.NET C#方向的技术开发工作,具有10多年的各类架构开发工作经验。

向TA提问 私信TA
展开全部

有二种方式来查看正在执行的SQL语句

  1. 使用SQL自带的SQL Server Profiler,以可视化界面的方式来查看。

    从开始=》所有程序=》Microsoft SQL Server 2008=》性能工具打开Profiler工具,也可以打开SQL Server Management Studio=》工具=》SQL Server Profiler。

    然后选择文件=》新建=》跟踪打开一个连接窗口,选择将要跟踪的服务器实例然后连接,并打开“跟踪属性”对话框,点运行即可看到正在执行的SQL语句。

  2. 使用SQL语句来查看正在运行的语句,如下

        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


yfcp
推荐于2018-11-16 · 知道合伙人软件行家
yfcp
知道合伙人软件行家
采纳数:1748 获赞数:5545
有多年网站建设相关工作经验。熟悉ASP、ASP.net、VB、JavaScript、HTML等语言和CSS、Ajax等相关技术。

向TA提问 私信TA
展开全部
用MSSQL自带的工具 SQL Server Profiler 可以看到。

SQL Profiler是一个图形界面和一组系统存储过程,其作用如下:
图形化监视SQL Server查询;
在后台收集查询信息;
分析性能;
诊断像死锁之类的问题;
调试T-SQL语句;
模拟重放SQL Server活动;
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
元芳会看个毛
推荐于2017-11-27 · TA获得超过212个赞
知道小有建树答主
回答量:318
采纳率:100%
帮助的人:330万
展开全部
首先你参照的软件用到的数据库SQL SERVER环境你有没有,如果有你可以监测SQL执行的情况,那样可以获取SQL执行的语句。不过现在很多程序都对SQL进行了封装,如果存储过程加密了,那还得费一翻功夫。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式