当您在SSMS中处理SQL文件时,SSMS将打开一个sql连接,并且在处理该SQL文件的时间内,无论执行语句多少次,它始终使用相同的连接-永远不要关闭它。
现在我正在编写一个Web界面,基本上是SSMS的替代品,因为那太慢了。
现在,如果我想复制此功能,可以将连接放入静态的ConcurrentDictionary中,可以从cookie /参数中访问它,这不是问题。
我想知道SSMS为什么选择这样做吗?
为什么不只是关闭并重新打开连接?
我认为性能不是那里的原因,所以-有吗?
我能想到的唯一原因是通过这种方式,您可以使用临时表,而不必使用全局临时表。
如果您需要分析查询速度较慢的数据,这可能会很有用。
但是我不认为这可能是原因-可以只使用全局临时表...
是否有任何好的理由以这种方式进行连接处理?