繁体   English   中英

SSRS报告呈现的查询计划在哪里

[英]Where is the query plan from an SSRS report rendering

嗨,我有一个简单的问题。 但它引出了另一个问题。 我想删除stor proc i ran的查询计划。 所以我使用了proc

exec dbo.uspNameOfProc

然后使用查询检查计划chace

SELECT [text], cp.size_in_bytes, plan_handle
FROM sys.dm_exec_cached_plans AS cp CROSS APPLY 
     sys.dm_exec_sql_text(plan_handle)
where [text] like '%uspNameOfProc%'

我还缺少什么?

RUN exec dbo.uspNameOfProc然后运行sp_who3找出它正在运行的spid。

Then run USE master;
GO
SELECT * FROM sys.dm_exec_requests
WHERE session_id = YourSPID;
GO

这将为您提供计划处理。 要查看执行计划的运行情况。

USE master;
GO
SELECT * FROM sys.dm_exec_query_plan (YourPlanHandleID);
GO

然后,如果您希望从缓存清除计划使用此。

DBCC FREEPROCCACHE (YourPlanHandleID);
GO

希望有所帮助。 UPDATE * * *确保在单独的查询窗口上执行这些操作,以便不改变执行计划。

获取计划句柄的一种稍微简单的方法(因为您正在使用存储过程)将来自sys.dm_exec_procedure_stats。 像(来自你的数据库):

select plan_handle
from sys.dm_exec_procedure_stats
where database_id = db_id()
   and object_id = object_id('dbo.uspNameOfProc');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM