第九章 PowerBuilder.doc

  1. 1、本文档共12页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第九章 PowerBuilder

在前面的内容当中,我们介绍了有关数据窗口的基本概念、功能和方法,下面我们将把使用数据窗口的一些高级技术介绍给大家。 ? 9.2 数据窗口与数据库 9.2.1 事务对象 我们知道事务对象在POWER BUILDER 当中占有非常重要的地位,POWER BUILDER的应用程序必须通过事务对象来实现与各种数据库的连接,所以在讨论数据窗口和数据库的关系之前,我们首先来介绍有关事物对象的基本内容。 在POWER BUILDER当中,要想对一个数据库进行操作,首先必须建立与这个数据库的连接。在一个POWER BUILDER数据库连接中,事务对象是一个特殊的不可视的对象,其功能就是为POWER BUILDER程序与数据库之间的通信提供一个通信区。事务对象当中定义了POWER BUILDER用来与数据库进行连接的参数。在访问数据库之前,必须先建立一个事务对象,然后给这个事务对象的属性赋以合适的值,才能通过这个事务对象与数据库连接,完成所需的数据库操作。当一个应用程序开始运行时,POWER BUILDER 会自动创建一个名为SQLCA的默认全局事务对象。SQLCA是“SQL COMMUNICATIONS AREA”SQL通信区的缩写。可以在应用程序中使用这个默认的事务对象,也可以定义自己的事务对象。 POWER BUILDER提供了四条用来进行事务管理的语句 CONNECT: 成功的CONNECT语句标志着一个事务的开始。在执行CONNECT语句之前,必须对一个已经存在的事物对象的用以连接DBMS的属性赋以合适的值。 DISCONNECT: 这个语句标志着中止一个事务。 COMMIT: 执行COMMIT将提交自该事务开始之后当前事务对数据库已做的所有尚未提交的更新操作。并开始一个新的事务。 ROLLBACK: 执行ROLLBACK语句之后,当前事务已做的所有更新操作都将被撤消,并开始一个新的事务。 9.2.2 使用事务对象 有两种方法可以为一个数据窗口设置事务对象。 使用SETTRANS函数:SETTRANS函数将一个特定的事务对象拷贝到数据窗口控件的内部事务对象当中。在程序使用该函数的时候,数据窗口控件使用自己内部的事物对象并且根据需要自动执行连接与断开连接的操作,如果出现错误,则自动撤消已做的所有更新操作,恢复到事务开始时的状态。 当数据窗口要访问数据库的时候,如果执行一个RETRIEVE命令或者UPDATE命令,数据窗口就会发出一个内部CONNECT命令,处理相应的数据访问。数据处理结束后,还会发出一个内部的DISCONNECT命令,断开与数据库的连接。所以如果在程序中使用SETTRANS函数,不需要另外书写CONNECT和DISCONNECT命令。 从上面的内容当中,我们可以看出SETTRANS语句的缺陷,那就是,在每次进行数据库访问的时候,都要与数据库建立新的连接,而这种连接会占用相当部分的系统资源。而且在进行数据库访问的时候,用户不能对这个访问过程进行控制。如果使用SETTRANS语句,当数据库连接的数目增大的时候,程序的效率就要受到影响了。 使用SETTRANSOBJECT命令:使用这条命令可以为一个数据窗口指定一个事务对象。我们应该按照下面的顺序编写脚本来进行数据库的访问。 CONNECT SETTRANSOBJECT RETRIEVE或UPDATE COMMIT或ROLLBACK DISCONNECT 这里我们看到了两条新的指令:RETRIEVE和UPDATE RETRIEVE指令的功能是在使用SETTRANSOBJECT语句把一个数据窗口和一个事务处理对象连接起来之后,把数据库中的内容检索到数据窗口当中去。它的调用格式是DATAWINDOW.RETRIEVE() 如果要访问的数据源是使用SQLSELECT语句产生的,那么在调用RETRIEVE函数的时候必须给出参数值,调用格式如下:DATAWINDOW.RETRIEVE(ARG1,ARG2,RETRIEVE函数中的参数次序要与数据窗口对象中定义的SQL SELECT参数的次序保持一致。POWER BUILDER允许RETRIEVE函数带有多于数据窗口对象在SQL SELECT中定义的原有参数数目的参数,多余的参数将被忽略。利用这个特点,可以设计出能够操作不同数据窗口对象的通用检索。 UPDATE指令的功能是在对数据窗口中的数据进行修改之后,需要使用UPDATE函数将所做的修改写回到数据库中去。 ? 9.3 动态数据窗口 9.3.1 简介 从前面的内容当中,我们知道一个窗口上的数据窗口控件,必须和一个真正的数据窗口对象配合起来才能进行工作。数据窗口对象和数据窗口对象所包含的所有的实体(如文本、图形)都有自己的属性。在程序运行的时候,我们可以通过获取、修改这些属性的方法来对数据

文档评论(0)

yan698698 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档