我有一个查询,当SQL服务器来自Web请求时需要大约20倍的执行时间,就像从SQL Server Management Studio运行完全相同的查询时那样;
以下屏幕截图来自SQL Server Profiler。前两个记录与通过Web请求进入的查询的接收和执行有关,而第三个记录是从SSMS运行的完全相同的查询。为什么两者之间会有如此巨大的差异?
要点:查询是从LINQ生成的。我获取了生成的SQL的副本并在SSMS中运行它以获得这些结果。
答案 0 :(得分:0)
ARITHABORT在SSMS中为ON,默认情况下为SqlClient连接为OFF。
看看这是否解决了您的问题:
new SqlCommand("SET ARITHABORT ON", connection).ExecuteNonQuery();