第10章窗口及控件2-游标_第1页
第10章窗口及控件2-游标_第2页
第10章窗口及控件2-游标_第3页
第10章窗口及控件2-游标_第4页
第10章窗口及控件2-游标_第5页
已阅读5页,还剩17页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、l利用下拉列表框和游标技术实现系统登录功能,界面如下:l与下拉列表框类似控件列表框ListBoxl名称前缀:lb_图形列表框PictureListBoxl名称前缀:plb_下拉图形列表框DropDownPictureListBoxl名称前缀:ddplb_l与下拉列表框类似控件比较图形列表框和图形下拉列表框比其他两种多一个图片,属性中为Pictures标签页中设定l下拉列表框属性 l名字前缀:ddlb_l列表项:items标签页中列出lAllowEdit:选中后,允许用户编辑列表项lShowList:选中后,下拉列表框仅用于列表显示,不具备下拉功能。相当于列表框。事件lSelectionchan

2、ged事件:改变选项后触发该事件lDoubleClicked事件:双击某选项时触发lModified事件:列表框编辑确认后触发lGetFocus事件:下拉列表框获得焦点时 触发lLoseFocus事件:失去焦点时触发l下拉列表框常用函数:关于列表项的操作Additem( )l在列表项的尾部追加一个新的列表项,参数为插入项的字符串,如ddlb_1.additem(计算机系)DeleteItem( )l在下拉列表框中删除项,参数为列表项的索引号(int类型),例如,ddlb_1.deleteitem(3)为删除列表框中第三项。InsertItem( )在指定的索引号所指的列表项之前插入新的列表项,

3、例如,ddlb_1.insertitem(“副研究员”,3),即在第三项之上插入“副研究员”FindItem( )lInteger listboxname.FindItem ( text, index )l下拉列表框常用函数:关于列表项的操作FindItem( )l定义 Integer listboxname.FindItem ( text, index )l含义:含义:从index指示的列表项的下一项开始查找包含text字符串的第一个列表项,index=0表示从所有列表项中查找。返回值为满足条件的第一个列表项的索引。l例如:Integer indexlindex=ddlb_1.FindIte

4、m ( “副”, 0 )l则index=1lindex=ddlb_1.FindItem ( “副”, 1 )l则index=8l列表框常用函数:关于列表项的操作listboxname.SelectedItem ( )功能:得到选中的列表项,仅用于列表框和图片列表框参数:无返回值:string类型,返回列表框中当前被选中的列表项字符串;如果没有任何项被选中,则返回空串;如果列表框为空,则返回空值,即NULL例如,string texttext=lb_1. SelectedItem ( )则,返回“工程师”l下拉列表框和图片下拉列表框利用Text属性取值,如ddlb_1.textl游标技术 (读取

5、多行数据)l当需要读取多条记录时,就需要使用游标进行操作。其典型运用过程一般为: l(1)用DECLARE声明游标;l(2)用OPEN语句打开游标;l(3)使用FETCH语句读取一行数据;l(4)处理数据;l(5)判断是否已经读完所有数据,未读完时重复执行(3)(5)步;l(6)使用CLOSE语句关闭游标。l1DECLARE语句l使用游标前需要用DECLARE语句声明游标,其语法格式为:lDECLARE CursorName CURSOR FOR SelectStatementlUSING TransactionObject;l其中,CursorName是游标的名称,可以使用任何有效的标识符来

6、表示;SelectStatement是任何有效的SELECT语句;TransactionObject是事务对象名,缺省时使用SQLCA。l2OPEN语句lOPEN语句打开已经声明的游标并执行相应的SELECT语句。其语法格式为:lOPEN CursorName;l其中CursorName是已经用DECLARE语句声明的游标名。 l3FETCH语句lFETCH语句从游标中读取当前记录并把它保存到指定的变量中。当数据库支持下述用法时,还可以使用FETCH FIRST、FETCH PRIOR、FETCH LAST。FETCH语句的语法格式为:lFETCH CursorName INTO HostVa

7、riableList;l其中CursorName是OPEN语句打开的游标名,HostVariableList是与SELECT语句中选择字段相对应的绑定变量列表。l4CLOSE语句lCLOSE语句关闭先前打开的游标。其语法格式为:lCLOSE CursorName ;l其中CursorName是先前打开游标的名称。l关闭游标后,就不能再使用FETCH语句从游标中读取数据了。l如果需要在程序中连接数据库就必须通过嵌入式SQL来完成,有时候我们需要在程序中直接使用SQL语句操作数据库。PowerScript提供了一整套嵌入式SQL语句。lPowerScript支持在程序中使用嵌入式SQL语句,并且支

8、持在SQL语句中使用具体数据库管理系统(DBMS)特有的SQL语句、函数和保留字,实际上,对于SQL语句,PowerBuilder在将其发送到DBMS之前,并不做任何处理,而由DBMS完成相应操作,最后PowerBuilder得到处理结果。l整个SQL语句可以写在一行,也可以写成更清晰易懂的多行格式,不需使用断行续行符,只要在整个语句结束处加上一个分号(;)分号(;)即可。在SQL语句中可以使用常量或合法的变量,但使用变量时须在变量前加个冒号(:)(通常称做绑定变量),多个变量或常量之间用逗号(,)分隔。l一 数据库连接的建立与断开l1使用CONNECT建立与数据库的连接lCONNECT是每个

9、访问数据库的PowerBuilder程序必须使用的语句,它的功能是通过事务对象将应用程序与数据库建立连接,连接成功后,其它SQL语句和数据窗口才能通过事务对象对数据库进行操作。lCONNECT语句的语法格式为:lCONNECT USING TransactionObject;l其中,TransactionObject是事务对象,在执行该语句前,必须正确设置事务对象的数据库连接属性。方括号( )表示该成分可以省略,省略时使用默认的事务对象SQLCA。 l2使用DISCONNECT断开与数据库的连接lDISCONNECT语句断开与数据库的连接,执行该语句时,它首先执行COMMIT语句(事务提交语句

10、),完成事务提交,然后断开与数据库的连接。lDISCONNECT语句的语法格式为: lDISCONNECT USING TransactionObject;l其中,TransactionObject是前面用CONNECT语句连接的事务对象名。 l二二 提交与回滚事务提交与回滚事务l1提交事务语句提交事务语句COMMITCOMMIT语句提交事务,完成数据库的物理修改。执行该语句后,将关闭所有先前打开的游标(CURSOR)和过程(PROCEDURE),并开始一个新的事务。COMMIT语句的语法格式为:COMMIT USING TransactionObject;其中,TransactionObje

11、ct是事务对象名,缺省时使用事务对象SQLCA。l2回滚事务语句回滚事务语句ROLLBACKROLLBACK(回滚)语句放弃自上一个COMMIT、ROLLBACK或CONNECT语句以来的所有数据库操作,关闭所有的游标和过程,并开始一个新的事务。其语法格式为:ROLLBACK USING TransactionObject ;其中,TransactionObject是事务对象名,缺省时使用事务对象SQLCA。 l三三 单行检索语句单行检索语句SELECT单行SELECT语句从数据库中检索一条记录,如果找到多条满足条件的记录,则产生错误。其语法格式为:SELECT 字段名列表 INTO 变量列表

12、FROM 表名 WHERE 检索条件检索条件USING 事务对象名称;例如:select count(*)into :snamefrom passwordwhere name=:name and pass=:pwd;l四 插入语句INSERT其语法格式为:INSERT INTO 表名(字段名列表)VALUES (值列表)USING 事务对象名 ;l其中,字段名之间用逗号分隔,值列表是列的赋值,程序中可以使用常量,也可以使用绑定变量(PowerScript变量前加个冒号)。l例如pwd= 0002Insert into password(name,pass) values (“ 张三张三”, :

13、pwd); l五 删除语句DELETEl其语法格式为:DELETE FROM 表名WHERE 删除条件USING 事务对象名 ;l删除条件,满足该条件的行被删除,事务对象名缺省时使用SQLCA。l例如: name=sle_1.textlDelete from password Where name=:name;lDelete from password where name= 张三l六 修改语句UPDATElUPDATE语句修改表中指定的数据,其语法格式为:lUPDATE 表名lSET 字段名 =值 ,字段名 = 值 ,.lWHERE 更新条件lUSING 事务对象名 ;l例如lupdate xschlSet score=score+10,bkscore=0lWhere left(xh,5)= 02511 and course_no= 00005 ;l七 检查SQL语句的执行情况l每当执行一条SQL语句后,与该语句相关的事务对象的SQLCode属性都给出一个值指

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论