打开与数据库的连接是否更好 -
进行任何查询...更新....删除 -
在我用来关闭此连接后
或
程序加载时打开连接 -
并在程序结束时关闭?
提前致谢
答案 0 :(得分:6)
通常,您在代码中尽快关闭(Dispose)。使用try/finally
或using
块。
实际发生的情况取决于应用的ConnectionPool设置。
基本上,ConnectionPool的存在意味着您不必担心连接的使用(维护多少,需要多长时间),它就变成了外部配置。
BTW:除了WinCE框架之外,还有different rules。答案 1 :(得分:2)
始终关闭ADO.NET连接。原因是ado.NET基础设施将连接集中在一起,所以即使打开连接第一次需要一段时间,关闭它也会释放到池中,这样应用程序的其他部分就可以更快地建立连接。可以使用某个嵌入式数据库对此规则执行某些操作,但我们需要查看单个案例。
答案 2 :(得分:2)
您应该始终使用using
块立即关闭连接。
答案 3 :(得分:1)
关闭连接与Disposing不同。连接池可以根据连接字符串上的字典查找重新使用关闭的连接(您的连接字符串必须相同才能使用池,但此功能是透明的)。另一方面,如果您处置或使用USING,则连接对象将被销毁并且无法重复使用。
如果您计划在短时间内重新打开连接,那么使用Close会更有效。