老话题:DbConnection Close还是Dispose?(高手请进)
在操作数据库后,调用Close和Dispose有什么区别?
说明:
1. 网上有许多人说Dispose后,就不能再Open。
Dispose后,只要重新为ConnnectionString赋值,依然可以Open。
2. 在Pooling为false时(禁止使用连接池),Close和Dispose都会关闭连接;而在Pooling为true(允许使用连接池)时,有人说Close不会关闭连接,会将连接扔回连接池;而Dispose会关闭连接。
前部分说得对;但通过测试,Pooling为true时,即使调用Dispose,连接依然只是放回连接池,不会关闭。通过sql profiler可以观察到这个过程。
msdn说两者在功能上是等效的。大神们发表看法。。。
说明:
1. 网上有许多人说Dispose后,就不能再Open。
Dispose后,只要重新为ConnnectionString赋值,依然可以Open。
2. 在Pooling为false时(禁止使用连接池),Close和Dispose都会关闭连接;而在Pooling为true(允许使用连接池)时,有人说Close不会关闭连接,会将连接扔回连接池;而Dispose会关闭连接。
前部分说得对;但通过测试,Pooling为true时,即使调用Dispose,连接依然只是放回连接池,不会关闭。通过sql profiler可以观察到这个过程。
msdn说两者在功能上是等效的。大神们发表看法。。。
...全文
相关推荐
.net连接DB2数据库
.net连接DB2数据库
C#通过SSH访问RDS服务器上的MySQL数据库
C#通过SSH访问RDS服务器上的MySQL数据库
unity3d数据库链接
在unity中数据库的链接,各种常用的数据库,本人为新手,这个也是为新手准备的。
vb.net连接Access
VB.NET Access数据库连接 采用OleDbConnection对象 Private Function getAccessConnection() As OleDbConnection Dim dbConnectionString As String = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=|DataDirectory|\Resources\mag.mdb;Persist Security Info=true"
unity3d中连接数据库
unity3d中连接数据库,用于Unity3D开发时参考。


