Jam*_*s B 4 java sql-server sql-server-2005 jtds jdbc
我正在使用JTDS驱动程序,我想确保我的java客户端收到与在Mgmt studio中执行SQL时相同的查询计划,有没有办法获得查询计划(理想情况下是xml格式)?
基本上,我想要相同的格式输出
set showplan_xml on
Run Code Online (Sandbox Code Playgroud)
在管理工作室.有任何想法吗?
一些用于获取session_id计划的代码
SELECT usecounts, cacheobjtype,
objtype, [text], query_plan
FROM sys.dm_exec_requests req, sys.dm_exec_cached_plans P
CROSS APPLY
sys.dm_exec_sql_text(plan_handle)
CROSS APPLY
sys.dm_exec_query_plan(plan_handle)
WHERE cacheobjtype = 'Compiled Plan'
AND [text] NOT LIKE '%sys.dm_%'
--and text like '%sp%reassign%'
and p.plan_handle = req.plan_handle
and req.session_id = 70 /** <-- your sesssion_id here **/
Run Code Online (Sandbox Code Playgroud)
@@SPID来自Java或使用SSMS和考虑sys.dm_exec_sessions和/或sys.dm_exec_connections你的Java客户端会话(它可以被识别program_name,host_process_id,client_net_address等).sys.dm_exec_requests的session_id发现.sys.dm_exec_query_plan的plan_handlefound 来提取计划.或者,您可以使用Profiler,将分析器附加到服务器并捕获Showplan XML事件.
| 归档时间: |
|
| 查看次数: |
1923 次 |
| 最近记录: |