我正在从实体框架调用一个表值函数,并且需要能够添加option (recompile)它,因为它拾取的执行计划不是最佳的.在SQL Server Management Studio中运行查询,它看起来像这样:
select
*
from dbo.fDE_myquery(0, 0, 3309, '7/1/2013', '7/1/2014', 0, 0)
option (recompile)
Run Code Online (Sandbox Code Playgroud)
来自EF,没有办法添加这个提示,AFAIK.EF部分看起来像:
var query = from f in ctx.fDE_myQuery(aBool, anotherBool, StartDate,
EndDate, someInt, moreBool)
select f;
Run Code Online (Sandbox Code Playgroud)
我看到了这个问题:
但它已经过时了,所接受的解决方案并没有提供足够的信息来说明如何使用实体框架实际实施建议的解决方案(使用计划指南).如果这是唯一的解决方案,那么如何让实体框架使用计划指南呢?
我有一个查询,它在SQL Server Management STudio中是超高速的,并且在sp_ExecuteSQL下运行时超级慢.
这是否与在spExecuteSQL下运行时未执行的执行计划的缓存有关?