当前位置:首页>> 网站建设知识>> 网站建设知识

全文搜索

精华导读

·网站知识:虚拟中的真实:虚拟主机应用初探
·如何做好互联网的策划
·自动分词与中文搜索引擎
·网页文章的优化
·网站的一些基础小知识
·把网站变成卖场
·细说选择.cn域名的七大理由
·网站性感域名十大原则
·大型商务网站的SEO优化误区
·导致搜索引擎收录困难的5种原因
·网站建设中meta标签之详解
·网页制作中Web网页安全色谱
·网页设计中HTML常范的五个错误
·如何建立网站地图(site map)
·网站建设时如何选购虚拟主机?
·中国国家顶级域名和国际域名有什么区别?
·企业建设网站域名可以使用哪些字?
·建设网站时企业如何准备建网站资料?
·DIV+CSS建立标准WEB网页的好处

最新发表

·js中的数组如何排序?解决
·js中的Defer属性实例
·网站被挂马检查步骤
·删除sql数据库中的重复数据
·html和xml有什么差别
·falsh中调用外部swf动画
·网站建设之外贸网站建设知识
·如何做网站-网站建设知识
·企业网站建设知识——成为好网站的要
·网站建设知识心得
·.net中页面之间传递值的几种方法
·ASP.NET中水晶报表的使用
·用ASP.NET/C#连接Access和SQL Server数据库
·在.NET 应用程序中用System.Web.Mail 发送电子邮件
·最佳实践 ADO.NET实用经验无保留曝光
·一些很酷的.Net技巧
·sql数据库小知识:where、group by、having 区别
·修改sqlserver默认端口并实现程序连接
·web制作中的sqlserver、unicode、utf-8

数据库连接关闭性能比较

文章来源:网站建设 文章编辑:admin 添加时间:2009-5-7 15:40:20

数据库连接关闭性能比较-------------下面是问题:

请高手指点,数据库连接打开以后,连续执行几个操作以后再关闭,和执行一次操作就关闭,然后执行第下一次操作有什么区别,哪一个性能更好呢? 
例如: 
方案一: 
mysql.open(); 
mysql.insert('sql1'); 
mysql.insert('sql2'); 
: 
mysql.insert('sqln'); 
mysql.close(); 
方案二: 
mysql.open(); 
mysql.insert('sql1'); 
mysql.close(); 
mysql.open(); 
mysql.insert('sql2'); 
mysql.close(); 
: 
mysql.open(); 
mysql.insert('sqln'); 
mysql.close(); 
方案一和方案二到底哪一个效率更高,性能更好呢? 请各位高手指教,并给出理由,谢谢。
网友回复:mark帮顶,我自己感觉是第一种效率高一点,呵呵,没有理论基础,等待高手
网友回复:呵呵,其实经常碰到这样的情况,循环操作数据库,但是一直没有找到相关资料,介绍怎样使用更好,只好上来找找高手。 

网友回复:肯定是第一个效率高的。 
从最简单的来说,连接数据库是要有时间的,多次的连接效率肯定慢。 
而且要是是远程数据库的话,你这种不停的要求连接的语句会带宽占用时间也大。 


第二种方法应该是防止有的线程占线的,就是连接后有大段不需要连数据库的逻辑执行的程序,但像楼主这样写的连续执行sql的都不用多说了,肯定是第一个好。 
第二种是用时间作代价来防止占线的。
网友回复:假如执行时间比较长的话,第一种会不会占用连接时间过长而导致超时呢?还有许多框架的设计不用手动打开连接和关闭连接,那是怎么设计的呢,感觉应该是第二种方案呢
网友回复:正在使用中的mysql连接是不会超时的,我不知道你的“许多框架的设计不用手动打开连接和关闭连接”什么意思我用java,.net,delphi连数据库都是要连接的,所谓的不用手动连接只是某些控件已经帮你连了。 

mysql的连接超时是可以自己设置的,我记得是设置timeout的属性,你可以设成不超时。但是在一般情况下不会超时的。那些设计不关闭连接的程序应该是会长时间占用mysql的线程的,对于很多用户访问数据库的程序不适用。
网友回复:第一个高。 

第一个相当于一个长连接。 
就像憋了好久的尿,一下子全解决了 
第二个连接太频繁。 
就像一分钟去一趟厕所。 



[ ]

首页 评论 打印 刷新 返回顶部 关闭
【相关文章】  【相关评论】
PHP技巧:PHP脚本编程中的文件系统函数库
PHP技巧:详解phplib模板使用过程及运行原理
PHP技巧:优化动态网页技术PHP程序的12条技巧
PHP整体网页如何防注入
十四条令PHP初学者头疼问题大总结