I如何优化你的PowerBuilder程序.docVIP

  1. 1、本文档共9页,可阅读全部内容。
  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文档。上传文档
查看更多
I如何优化你的PowerBuilder程序

如何优化你的PowerBuilder程序 PowerBuilder是快速有效的开发工具,在程序实现过程灵活,下面介绍一下在开发高校产品过程中积累的一些经验。 SQL?语句 1、缓冲?SQL?语句 SQL语句,SQL?建立缓冲区来 ???????????在缺省情况下,SQL?语句的缓冲区是关闭的,你可以 ????????????????????????????SQLCACHE?=?n ??????????n?表示装入缓冲区的?SQL?语句数量(缺省为0)。 ???dw_1.SetTransObject(sqlca) ????SQLCA.dbParm?=?SQLCache?=?0 ????dw_1.retrieve() ????????如果将上例的?SQLCache?=?0?改为?SQLCache?=?25,,否则也将影响程序执行的性能。 ????注:此方法对用?ODBC?和?orACLE?连接的数据库非常有效。 2、捆绑变量 ???SQLCA.DBPARM?=?DISABLEBIND=1 ????Insert?INTO?DA_DH?valueS(1,河南0) Insert?INTO?DA_DH?valueS(2,河南1) Insert?INTO?DA_DH?valueS(3,河南2) Insert?INTO?DA_DH?valueS(4,河南3) Insert?INTO?DA_DH?valueS(5,河南4) Insert?INTO?DA_DH?valueS(6,河南5) PB?将重新处理每个带有 SQL语句。如果将上例改为: SQLCA.DBPARM?=?DISABLEBIND=0 ????Insert?INTO?DA_DH?valueS(1,河南0) Insert?INTO?DA_DH?valueS(2,河南1) Insert?INTO?DA_DH?valueS(3,河南2) Insert?INTO?DA_DH?valueS(4,河南3) Insert?INTO?DA_DH?valueS(5,河南4) Insert?INTO?DA_DH?valueS(6,河南5) Insert?语句按如下格式进行处理: Insert?INTO?DA_DH?valueS(?,?) ????其中???称为占位符。系统性能将有所增强。 3、用数据窗口代替?SQL?语句 SQL?语句都是可行的,PB?对数据窗口和?SQL?语句采用不同的处理机制,因此, 例:为里检索电话档案中的用户名,可以利用?SQL?语句, 如果使用第一中方法: 首先定义一个游标: ????DECLARE?CUR?CURSOR?FOR ????Select?DA_DH.HM ????FROM?DA_DH; 然后可以: ????STRING?stxt[],st ????int?li ????????open?cur ????do?li?=?li?+?1 ????????fetch?cur ????????into?:stxt[li]?; ????????st=st+stxt[li]?+?~r~n ????loop?while?stxt[li] ????close?cur; ????mle_1.txt?=?st 也可以使用第二种方法: ????dw_1.settransobject(sqlca) ????dw_1.retrieve() ????利用?POWERBUILDER?PROFILER?工具进行检查,对比两种 方法?????????????????????所需时间?(百分之一秒) SQL?语句  ??? 100.9857 49.0133   由于数据窗口或 DATASTORE?使用了标准的内嵌的代码,DATASTORE..????即使是必须用 SQL?语句的时候,也应该尽量. 二、数据窗口的编程和执行 数据窗口是PB最值得被称道的,?其具有如下特点: 1.?多种显示方式. 2.?多种编辑方式. 3.?使用方法简单. 4.?具有多种报表形式. 5.?可实现屏幕滚动. 6.?可实现数据的有效性校验. 7.?执行性能显著提高. 8.?编程工作变少. 9.?可以在数据窗口内部实现数据哭的更新. ,?我将介绍一些用于提高数据窗口性能的技术. 1.?减少连接数据库的次数 .?因此在程序中,一旦与数据库连接后,?减少连接数据库的次数. PowerBuilder?提供里两个函数来建立数据窗口与事务对象的连接: SetTrans() ????????SetTransObject() 在程序中应当尽量使用?SETTRANSOBJECT(),?因为SETTRANS()?函数在每次RETRIEVE(),?Update()?等函数之后,?都要执行数据库的

文档评论(0)

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

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

1亿VIP精品文档

相关文档