当前位置:  开发笔记 > 数据库 > 正文

如何在SQL Server Profiler中获取SQL Server查询的参数值

如何解决《如何在SQLServerProfiler中获取SQLServer查询的参数值》经验,为你挑选了2个好方法。

我正在尝试分析SQL Server 2008探查器中的死锁.我知道如何找到有问题的SQL查询,但收集的查询不包含参数值.

换句话说,我可以看到这样的事情:

DELETE FROM users WHERE id = @id

但我想看到的是:

DELETE FROM users WHERE id = 12345

我想我需要在探查器中收集一些额外的事件或列,但我不知道哪个.我目前正在使用"TSQL_LOCKS"模板.

任何提示将不胜感激.

谢谢,

阿德里安

免责声明:之前我曾问过类似的问题,但我觉得这个问题太具体了,这就是我没有回复的原因.我开始用这个尝试了.



1> davek..:

我认为你需要RPC:Completed事件:

http://msdn.microsoft.com/en-us/library/ms175543.aspx



2> Remus Rusanu..:

事件探查器将在RPC:Completed / RPC:Starting事件中包含参数值。但是您已经得到答复告诉您。

我要添加的是,几乎不需要知道参数运行时值即可分析死锁图。首先,因为如果在死锁中涉及“用户”,那么如果冲突在键上,则死锁图本身将放弃@id是什么冲突。其次,更重要的是,对于死锁情况,所涉及的确切密钥无关紧要。不太可能发生死锁,因为会删除ID为123的用户,但是在删除用户321时不会发生。

如果您决定首先询问SO,那么我认为最好是发布实际的死锁图,并让社区进行了解。这里有很多仅从死锁图XML就能回答很多问题的方法。

推荐阅读
手机用户2402852307
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有