SQL Server 2016裡的sys.dm_exec_input_buffer的成績。本站提示廣大學習愛好者:(SQL Server 2016裡的sys.dm_exec_input_buffer的成績)文章只能為提供參考,不一定能成為您想要的結果。以下是SQL Server 2016裡的sys.dm_exec_input_buffer的成績正文
我們都曉得DBCC敕令有點為難,由於你不克不及在T-SQL查詢裡挪用它們,你也不克不及聯系關系它們的輸入到其它DMV/DMF。例如你想為每一個用戶會話前往最初一個履行的SQL語句....
sys.dm_exec_input_buffer
在SQL Server 2016裡,工作就變得簡略多,由於微軟為你供給了一個新DMFsys.dm_exec_input_buffer,它和DBCC INPUTBUFFER一樣做異樣的任務。
應用sys.dm_exec_input_buffer異常簡略:這個DMF須要2個輸出參數——會話和指定會話的要求id。上面代碼展現了挪用新函數的簡略例子。
SELECT * FROM sys.dm_exec_input_buffer(55, 0) GO
但你可以做更龐雜的工作,像用CROSS APPLY運算符與其它DMV聯系關系信息。我們來看上面的代碼。
SELECT r.session_id, ib.event_info FROM sys.dm_exec_requests r JOIN sys.dm_exec_sessions s ON s.session_id = r.session_id CROSS APPLY sys.dm_exec_input_buffer(r.session_id, r.request_id) ib WHERE s.is_user_process = 1 GO
如你在這裡看到的,這個查詢關於一切以後履行的查詢,前往一切提交的SQL語句。很簡略,是否是?