欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

请问:语句的执行快慢有关问题

更新时间: 2014-01-05 02:27:46 责任编辑: Author_N1

 

请教:语句的执行快慢问题
vf9中,自由表中没有主键,但数据量很大的情况下,用replace跟用update比较,哪个更快?

--参考方法--
这个问题没有简单答案

如果你熟悉 vfp 或 foxpro 的 Rushmore 技术,且 for 条件是可优化的,你也熟悉 replace 的 next, rest 特别是 while 条件的用法,replace 应该会快一些。
如果你不熟悉这些技术,使用 update sql 语句更明智些。

上面的断言基于下列原因:
1. update sql 使用记录锁来完成更新操作,这有利于多用户环境,但也同时损失了性能
2. update sql 会在需要的时候自动创建临时索引,虽然 update 和 replace 都会自动利用已有的索引,但在没有已建好的索引情况下,update 会好于 replace

另外,replace 会考虑已打开表上的 set filter 条件,而 update sql 不受它的影响


--参考方法--
因为影响因素比较多,你还不确定使用或不使用哪些因素,所以版主说没有简单的答案。
在结合你的实际表,你更新条件等上面版主提到的因素,测试后才能准确知道你本次应该用 Replace 还是 Update。
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:27:46
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/10096/
本文WWW.DOC100.NET DOC100.NET版权所有。