这似乎是一个简单的问题,但我想知道不调用“close()”函数的缺点。
答案 0 :(得分:10)
迟早,您将遇到“已达到最大连接限制”错误。我称这是一个主要的劣势。
答案 1 :(得分:7)
除了耗尽连接池(因为到目前为止大多数答案都是如此),您将面临锁定数据的危险。
如果您正在读取或写入表,某些锁定语义将导致某些行被锁定到其他连接。如果您在连接上有任何打开的事务,则尤其如此。
读取和写入可能会失败,应用程序将在整个地方抛出异常。
简而言之,始终关闭连接。
答案 2 :(得分:1)
连接池将填满,任何新连接都将超时,等待池中的新连接。
答案 3 :(得分:1)
每个与SQL Server的连接都需要内存分配。
因此,您打开的连接越多,正在使用和保留的内存就越多,这可能会被更好地利用。
如果您想知道SQL Server中的连接使用了多少内存,请查看以下参考。
答案 4 :(得分:0)
已打开与数据库服务器的连接。假设有100个程序命中同一个服务器......
你也应该处理它
答案 5 :(得分:0)
快速简单的回答是,越早关闭,连接池就可以越快地重新使用连接。