Tag: arithabort

从Web执行时查询超时,但从SSMS执行时超快

我试图在我维护的Web应用程序中debuggingSQL超时的来源。 我有C#代码的源代码,所以我确切知道哪些代码正在运行。 我已经将应用程序debugging到了执行超时的SQL代码的那一行,然后我观察SQL查询器中运行的查询。 当这个查询从networking执行时,它在30秒后超时。 但是,当我完全按照Profiler中的描述剪切/粘贴查询,并将其放入SSMS并运行时,它几乎立即返回。 我已经跟踪到的问题是在networking连接中将ARITHABORT设置为OFF(也就是说,如果我在SSMS会话中closures了ARITHABORT,它会运行很长时间,如果我将它重新打开,非常快)。 然而,阅读ARITHABORT的描述,它似乎并不适用…我只做一个简单的SELECT,并没有执行任何算术..只是一个单一的内部联接与WHERE条件: 为什么在这种情况下,ARITHABORT OFF会导致这种行为? 有什么办法可以改变从SSMS的连接ARITHABORT设置? 我正在使用SQL Server 2008。