如何在SQL Server中删除特定功能的缓存?

时间:2014-10-06 10:10:22

标签: sql-server caching

我有一个名为STOREDPROC的存储过程,它调用一个表值函数TABLEFUNCTION

我知道我可以通过WITH RECOMPILE选项执行它来删除存储过程的缓存。这还会删除程序中调用的函数的缓存吗?如果没有,那么有没有办法删除SQL Server中给定函数的缓存?

1 个答案:

答案 0 :(得分:0)

以下文章详细介绍了如何获取函数的缓存计划:

http://sqlperformance.com/2013/08/t-sql-queries/parameter-sniffing-embedding-and-the-recompile-options

使用此信息,您可以相对轻松地确定使用WITH RECOMPILE选项是否能够清除任何嵌入式函数的缓存。您还应该检查Option(Recompile)

的使用情况

您还应该查看文章http://support2.microsoft.com/kb/2801413/en-us

顺便说一句,要清除整个计划缓存,您需要执行命令DBCC FREEPROCCACHE。