使用与否后关闭数据库连接?

时间:2011-03-28 19:14:34

标签: c# database-connection

打开与数据库的连接是否更好 -

进行任何查询...更新....删除 -

在我用来关闭此连接后

程序加载时打开连接 -

并在程序结束时关闭?

提前致谢

4 个答案:

答案 0 :(得分:6)

通常,您在代码中尽快关闭(Dispose)。使用try/finallyusing块。

实际发生的情况取决于应用的ConnectionPool设置。

基本上,ConnectionPool的存在意味着您不必担心连接的使用(维护多少,需要多长时间),它就变成了外部配置。

BTW:除了WinCE框架之外,还有different rules

答案 1 :(得分:2)

完成后,

始终关闭ADO.NET连接。原因是ado.NET基础设施将连接集中在一起,所以即使打开连接第一次需要一段时间,关闭它也会释放到池中,这样应用程序的其他部分就可以更快地建立连接。可以使用某个嵌入式数据库对此规则执行某些操作,但我们需要查看单个案例。

答案 2 :(得分:2)

您应该始终使用using块立即关闭连接。

答案 3 :(得分:1)

关闭连接与Disposing不同。连接池可以根据连接字符串上的字典查找重新使用关闭的连接(您的连接字符串必须相同才能使用池,但此功能是透明的)。另一方面,如果您处置或使用USING,则连接对象将被销毁并且无法重复使用。

如果您计划在短时间内重新打开连接,那么使用Close会更有效。