- 相關(guān)推薦
用SQLSERVER查詢(xún)正在實(shí)行的SQL的方法
具體操作:
根據master.dbo.sysprocesses中的spid和blocked查找當前阻塞語(yǔ)句的主人,然后使用DBCC INPUTBUFFER ()查看阻塞語(yǔ)句。
例子:
打開(kāi)三個(gè)查詢(xún)分析器 A、B、C
創(chuàng )建一個(gè)測試用的表 testDia
Create Table testDia(ID int);
在A(yíng)執行以下語(yǔ)句:
Begin tran
Insert Into testDia Values(1);
在B執行以下語(yǔ)句:
Select * from testDia
當前情況:B中沒(méi)有顯示結果,顯示狀態(tài)為等待
在C執行以下語(yǔ)句:
declare @spid int, @blocked int
select top 1 @blocked = blocked
from master.dbo.sysprocesses
where blocked > 0
DBCC INPUTBUFFER (@blocked)
技術(shù)參考:
DBCC INPUTBUFFER (Transact-SQL)
顯示從客戶(hù)端發(fā)送到 Microsoft SQL Server 2005 實(shí)例的最后一個(gè)語(yǔ)句。
DBCC INPUTBUFFER ( session_id [ , request_id ] )
[WITH NO_INFOMSGS ]
session_id
與各活動(dòng)主連接關(guān)聯(lián)的會(huì )話(huà) ID。
request_id
要在當前會(huì )話(huà)中精確搜索的請求(批)。
下面的查詢(xún)返回 request_id:
復制代碼
SELECT request_id
FROM sys.dm_exec_requests
WHERE session_id = @@spidWITH
啟用要指定的選項。
NO_INFOMSGS
取消嚴重級別從 0 到 10 的所有信息性消息。
【用SQLSERVER查詢(xún)正在實(shí)行的SQL的方法】相關(guān)文章:
用SQL實(shí)現查詢(xún)數據不顯示錯誤數據的方法03-29
SQL查詢(xún)語(yǔ)句大全04-25
Sql Server、Access數據排名的實(shí)現方法03-30
MySQL導出導入SQL文件命令方法03-30
有關(guān)清除SQL Server日志的兩種方法03-29
SQL2008定時(shí)任務(wù)作業(yè)創(chuàng )建方法03-29
SQL優(yōu)化大全03-08