我正在尝试使用SQL Server Profiler 2008调试死锁。我知道如何在分析器中获取死锁的图形,但是当我将鼠标悬停在图形中显示的两个语句之一上时,出现的"Statement"工具提示只包含带有参数名称而不是值的查询。 换句话说,我得到的工具提示类似于这样: DELETE FROM users WHERE id = @id 我该如何查看相应的参数值?以下是截图:,我希望能够看到这样的信息,所以一定有方法可以实现。
您最好的选择可能是在您的配置文件中包含"SQL:StatementStarting",然后向上滚动列表查找死锁的一部分的SPIDs。这并不是一种简单的方法,但是如果它们是参数化的SQL语句和常规语句,则SQL Profiler会以不同的方式记录这些语句。从您的照片中看,它显示的是一个非参数化语句,但是您的问题似乎是关于一个参数化语句的。 我之前遇到过这个问题,试图弄清楚应用程序发送到SQL Server的确切内容 - 我只能看到参数化查询,这对我没有帮助。