浅谈VFP中RUSHMORE技术.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅谈VFP中RUSHMORE技术

浅谈VFP中的RUSHMORE技术   摘要:本文在Visual FoxPro中用实例验证不同情况下使用RushMore技术对查询速度的影响,讨论这项技术的基本特点,并根据其特点提出优化程序结构的方法,以达到加快数据访问的目的。   关键词:RushMore技术;VFP;索引   中图分类号:TP311.13 文献标识码:A      数据查询是数据库技术非常重要的一个部分,数据查询速度的快慢直接影响到程序的执行效率。在VFP中引入索引的概念来解决大型数据库中数据查询问题,RushMore技术是VFP中的一种数据查询技术,它利用索引优化对数据的访问。使用RushMore技术,对一些复杂的表操作时比不使用这项技术要快成百上千倍,因此,能否正确运用这种技术对程序的执行效率有着意想不到的作用。      1 RushMore技术实例耗时分析      既然RushMore技术在VFP中有着如此重要的作用,那它是如何加快数据查询的呢?它在所有的情况下都可以随意使用吗?下面,我们利用以下程序对其做一个简单测试。   首先,建立一个名字为jilu.dbf的表,该表有一个字段“数据 c(10)”,并根据字段“数据”建立一个名为“jilu”的索引。再建立并执行如下程序prog1.prg:   use jilu index jilu   for jiluhao=1 to 900000   append blank   replace 数据 with “Visual”   endfor   go 99   replace数据with“FoxPro”   go 34555   replace数据with “FoxPro”   go 75678   replace 数据 with “FoxPro”   该程序的作用是向新建立的jilu表中添加90万条数据为“Visual”的记录,并把其中的第99、34555、75678条记录中的数据更改为“FoxPro”。   1.1 在有索引的表中使用RushMore技术   现在,首先确保jilu表已经打开并且在当前正在使用的工作区中,然后建立并执行如下程序prog2.prg:   set optimize off   ks=second()   display all for 数据=“FoxPro”   js=second()   ? “不使用RushMore技术时,程序用时:”+str(js-ks,5,3)+“秒”   set optimize on   ks=second()   display all for 数据=“FoxPro”   js=second()   ? “使用RushMore技术时,程序用时:”+str(js-ks,5,3)+“秒”   在这个程序中用变量“ks”记录查询开始的时??,用变量“js”记录查询结束的时间,然后用表达式“js-ks”计算在查询三个数据为“FoxPro”的记录时所需要的耗时量。程序中分别用Set Optimize On和Set Optimize Off开启和关闭RushMore技术,最终屏幕上会分别显示出在这两种情况下程序查找三条“FoxPro”数据所需的时间。表1为五次实验结果,从该表中我们可以发现当开启RushMore技术时耗时量平均值为0.003秒,而关闭RushMore技术时耗时量平均值为3.373秒。很明显,在有索引的普通表中开启了RushMore技术后查询速度能够快上千倍。      1.2 在没有索引的表中使用RushMore技术   现在,将jilu表中的索引jilu删除后再次执行程序prog2.prg,实验结果如表2所示:开启RushMore技术时耗时量平均值为3.280秒,而关闭RushMore技术时耗时量平均值为3.337秒。从实验结果中可以发现在没有索引的普通表中开启RushMore技术几乎没有加快数据的查询速度,因此,在没有索引的表中,RushMore对程序效率没有明显的优化效果。      1.3 在SQL语句中使用RushMore技术   重新为jilu表建立一个索引,然后再建立并执行如下程序prog3.prg:   set safety off   set optimize off   ks=second()   select * from jilu where 数据=“FoxPro” into table temp   js=second() 记录操作结束时间   ? “不使用RushMore技术时,程序用时:”+str(js-ks,5,3)+“秒”   set optimize on   ks=second()   select

文档评论(0)

317960162 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档