我注意到 SQL Server 2008 r2 express 的一个奇怪行为:
通常我的查询执行时间约为 650 毫秒,但如果我打开 Management Studio 并运行任何简单查询(例如SELECT * FROM Something
),执行时间将变为 ~40 毫秒。如果我关闭管理工作室这个值恢复正常~650ms
并且无论在何处执行查询:来自 Management Studio 或我的应用程序(它使用 ADO.Net)
ARITHABORT 设置无效
为什么会这样?
gbn*_*gbn 22
您正在查询的数据库可能启用了“自动关闭”。
来自 SSMS 的连接会停止数据库关闭。当您关闭 SSMS 时,数据库将关闭。后续调用需要打开它。
自动关闭是 SQL Server Express 的默认设置,并不是一个好主意: