[英]SQL Server session queries
為了能夠訪問會話查詢,我在研究過程中發現的所有結果都與SQL Server會話中執行的最后一個查詢有關。
有沒有一種方法可以訪問在會話中運行的所有查詢而不是SQL Server事件探查器,因為在生產環境中使用事件探查器並不是那么容易。
有幫助嗎?
我可能在這里找到了解決您問題的方法。 我添加了一個游標以獲取特定會話的所有查詢:
DECLARE @sql TABLE(sql_handle VARBINARY(128))
DECLARE @sqltext VARBINARY(128)
INSERT INTO @sql
SELECT sql_handle
FROM sys.sysprocesses p
WHERE p.spid = (YOUR_SESSION_ID)
DECLARE MyCursor CURSOR FOR
SELECT sql_handle
FROM @sql
OPEN MyCursor
FETCH NEXT FROM MyCursor
INTO @sqltext
WHILE @@FETCH_STATUS = 0
BEGIN
SELECT TEXT
FROM sys.dm_exec_sql_text(@sqltext)
FETCH NEXT FROM MyCursor INTO @sqltext
END
CLOSE MyCursor
DEALLOCATE MyCursor;
GO
我希望這是您要尋找的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.