Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql NHibernate LINQ参数嗅探问题_Sql_Sql Server_Linq_Nhibernate_Parameter Sniffing - Fatal编程技术网

Sql NHibernate LINQ参数嗅探问题

Sql NHibernate LINQ参数嗅探问题,sql,sql-server,linq,nhibernate,parameter-sniffing,Sql,Sql Server,Linq,Nhibernate,Parameter Sniffing,由于SQL Server中的参数嗅探,我们遇到了性能问题。我们的应用程序使用NHibernate和LINQ提供程序 我正在寻找一种方法,例如将“OPTION(RECOMPILE)”添加到特定的SQL查询中。我现在可以使用拦截器,但我希望它只添加到某些IQueryable查询中。因此,并非所有的nhibernate查询都如此,因为这样我将失去查询计划缓存的优势 还欢迎使用NHibernate解决1个特定查询的参数嗅探问题的其他选项。使用查询计划指南为其指定优化 以下是一个基本演练: 虽然这在服务器

由于SQL Server中的参数嗅探,我们遇到了性能问题。我们的应用程序使用NHibernate和LINQ提供程序

我正在寻找一种方法,例如将“OPTION(RECOMPILE)”添加到特定的SQL查询中。我现在可以使用拦截器,但我希望它只添加到某些IQueryable查询中。因此,并非所有的nhibernate查询都如此,因为这样我将失去查询计划缓存的优势


还欢迎使用NHibernate解决1个特定查询的参数嗅探问题的其他选项。

使用查询计划指南为其指定优化

以下是一个基本演练:


虽然这在服务器端解决了问题,但是您需要找到导致问题的查询,找到正确的计划,并为其生成计划指南。SQL Server的下一个版本可能会解决一些参数嗅探问题。

使用查询计划指南为其指定优化

以下是一个基本演练:


虽然这在服务器端解决了问题,但是您需要找到导致问题的查询,找到正确的计划,并为其生成计划指南。也许SQL Server的下一个版本将解决一些参数嗅探问题。

我们已经偶然发现了这个链接,但是它使用了一个依赖于IQuery接口的实现,而我们使用IQuery功能。我现在不知道如何通过IQueryables向SQL查询添加注释。我们已经偶然发现了这个链接,但是它使用了一个依赖于iQueryInterface的实现,而我们使用IQueryables。我现在不知道如何通过IQueryables向SQL查询添加注释。