如何提高visual foxpro的性能_计算机论文参考.docVIP

如何提高visual foxpro的性能_计算机论文参考.doc

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

如何提高Visual FoxPro的性能_计算机论文 计算机论文 摘要:本文介绍一些实用技巧和技术。如果我们能正确地应用这些技术,就可以大大改进Visual FxPr的性能,提高数据的访问速度。 关键词:Visual FxPr ;性能;技术 高性能是 irsft FxPr数据库管理系统(特别是它的数据库引擎)的最大特点。Visual FxPr关系型数据库引进了对象模型,提高了引擎的存取速度并增强了客户/服务器特性,因此整个管理系统的功能变得更加强大。但是,这些强大功能的代价是使管理系统变得更加复杂。因此,一方面,很容易开发出性能稳定、面向对象、使用远程数据的应用程序,另一方面,也很难避免出现低性能的应用程序。 本文从改善、提高Visual FxPr性能的目标出发,介绍一些实用技巧和技术。 一、改善本地数据访问的性能 1.使用索引 Visual FxPr中的索引是基于树的数据结构,因此查询经过索引的表是很快的。但当表中有较多的索引时,更新表和向表中输入数据就会变得慢一些,因为 Visual FxPr 需要更新每个索引。通常,只需在用于筛选和联接的数据上建立索引。 应该避免以 FR 条件 或 NT 条件 这样的形式建立索引表达式,因为这些表达式无法优化。例如:INDEX N DELETED () TAG DEL是可以进行 Rushre 优化的,但是,INDEX N NT DELETED ()TAG NTDEL则不能。在特殊情况下,我们不想包含被删除的记录,可以先设置 SET DELETED N,再创建索引,这样可以加速操作。 此外,注意不要在那些只有少数离散数据中取值的字段(例如逻辑型字段)上建立索引。 2.优化查询的条件 Visual FxPr 通过查找与筛选表达式左边相匹配的索引表达式来优化筛选条件。我们经常试图将索引的标识名与一个筛选表达式相匹配,而 Visual FxPr 无法通过这种方式优化查询。下面使用的索引是错误的: USE USTERS INDEX N UPPER(u_nae) TAG nae SELET * FR usters ; HERE u_nae=BILL ap;ap; nt ptiized. N index n u_nae 在一个筛选的查询中正确使用索引的方法是∶ SELET * FR usters HERE UPPER(u_nae)=BILL ap;ap; ptiized! 3.使用 SYS(3051) 函数 SYS(3051)S 函数控制从一个记录(表、索引或备注文件)的锁定失败到再次尝试锁定它之间的时间间隔,以毫秒为单位,默认值为 333 毫秒。 如果在我们的系统中存在大量的锁定竞争,可以将这个值调大(最大值为 1000),以提高我们应用程序的性能,因为应用程序不会因徒劳锁定记录而浪费时间。但是,如果锁定竞争不多,应将该值调小(最小值为 100),以加速记录锁定的尝试。 4.注音标记和机器排序序列 在 Visual FxPr 中,已经改进了查询包含国际化字符(带有区分标记的字符)数据的优化方式。但如果我们的索引表达式的结果包含的字符都不带注音标记(例如 B 或 ),则查询还能更快。 非机器排序序列(例如“通用”排序序列)比机器排序序列慢,有下列几个原因:非机器索引关键字的大小是机器索引关键字的两倍,因为必须为每个字符记录注音信息;为了返回正确的结果,非机器排序序列要使用很多特定的规则来断定索引的顺序。因为机器排序序列更快,所以它通常用于联接和查找,而其他排序序列用于排序记录。 5.使事务安排紧凑 事务应该只包含更新数据操作,在事务中包含其他任何操作(如使用我们界面,使用编程结构的 ASE、HILE 或 IF 语句)都会降低更新数据的效率。 这对于 Visual FxPr 是很重要的,因为使用事务需要锁定记录。在事务中以及更新记录时会锁定记录,并且在提交或回滚事务之前不会释放这些锁定的记录。即使我们使用了 RLK () 或 FLK (),然后执行 UNLK,记录在 END TRANSATIN 或 RLLBAK 语句之前也一直保持锁定。另外,在追加记录时需要 Visual FxPr 锁定标头(即其他我们可以修改,但不能添加或删除),并且在事务结束(提交或回滚)之前一直锁定标头。因此,在一个高容量多我们的系统中,减少锁定记录的时间就变得很关键。 6.使用新的数据类型 在 Visual FxPr 中引入了四种新数据类型∶日期时间型、整型、双精度型和货币型。所有这些类型的数据都以二进制数据的形式保存在磁盘上(整型是四字节的二进制数据,其他数据类型是八字节的

文档评论(0)

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

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

1亿VIP精品文档

相关文档