如何确保代码和SSMS对参数化查询使用相同的执行计划

时间:2018-07-05 11:36:28

标签: sql sql-server

我正在调试SQL Server 2014中的参数嗅探问题。

我的应用程序执行的查询大致如下:(为简单起见,已大大减少)

SELECT somefields FROM MyTable Where anotherField = @myParameter

在通过command.Parameters.Add()方法添加@myParameter的地方,此查询花费的时间太长,并且超时。

当尝试复制问题时,我去了SSMS并尝试了以下查询:

DECLARE @myParameter int = 10 --same value as in the code
SELECT somefields FROM MyTable Where anotherField = @myParameter

查询将以与代码不同的执行计划快速运行。

我想对查询进行一些调整,以查看是否可以改善代码的执行计划,但是我需要一种使SSRS像代码一样工作的方法。

如何在SSRS中编写查询,以便SQL Server以与对应用程序相同的方式计算执行计划?

0 个答案:

没有答案