介绍ADO.Net数据库调试问题 - Go语言中文社区

介绍ADO.Net数据库调试问题


ADO.Net有很多值得学习的地方,这里我们主要介绍ADO.Net,包括介绍ADO.Net等方面。在向大家详细介绍ADO.Net之前,首先让大家了解下ADO.Net,然后全面介绍ADO.Net。

这也是Delphi里面我们对于一个数据库一般只采用一个连接的原因,为了减少数据库连接的数目来降低数据库负担,当然COM+和MTS也提供了连接池机制,但是其连接池机制似乎不是很成熟,特别是MTS中采用系统的数据连接池可能会造成系统的死锁,当然我们可以使用自己的连接池或者第三方的连接池来管理数据库连接。

而在ADO.Net中这一功能是是系统的一部分,但是在使用中发现只有连接被关闭才会返回池中,如果连续的创建数据库连接而已经使用的数据库连接没有被返回池中这个时候,ADO.Net会真实的创建数据库连接并且返回给用户。

由此可见在ADO.Net中如果不关闭连接而是不停的请求连接是一件很恐怖的事情。对于ADO.Net中的连接我的看法是尽可能早的关闭(返回系统连接池),这样可以加快系统反应速度而且能够降低数据库连接的数目。ADO的连接的关闭则是一个很有趣的事情,有的时候我们连接数据库速度限制我们频繁的关闭打开连接,为此我们可能需要保持一些连接以获得速度。

ADO.Net是微软的新一代数据访问引擎,采用OLE DB作为数据访问技术基础,采用数据集脱离的方式来访问修改数据。ADO是微软的上一代数据访问引擎,同样是基于OLE DB进行数据访问的数据访问引擎(也许应该说是组件),ADO是采用COM封装了OLE DB引擎的数据访问组件。

对于ADO的数据访问技术是比较成熟的。ADO 访问数据的时候可以断开连接也可以不断开连接。但是对于ADO.Net而言保持连接简直是浪费,因为其数据已经被提到了客户端来处理,已经和数据库没有关系了。

所以在ADO.Net的数据库系统中一般是当取回数据或者完成操作以后就会关闭数据库连接(实际上也许没有被关闭)。ADO.Net的数据库连接的关闭是返回缓冲池中而不是一定断开了和数据库的连接,对于何时关闭这个连接由ADO.Net的缓冲池管理机制来决定。而ADO在使用的时候如果关闭了连接那么这个连接是真的被关闭了。

【责任编辑:苏越 TEL:(010)68476606】

点赞 0
版权声明:本文来源51CTO,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:http://developer.51cto.com/art/200912/171466.htm
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2021-05-16 19:19:52
  • 阅读 ( 1148 )
  • 分类:数据库

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢