论文部分内容阅读
摘要:在数据库应用程序中,查询数据窗体大量应用,好的查询方法的使用可以大大提高软件的性能,提供给用户更好的操作体验。本文将清晰阐述PB开发工具中实现数据查询并显示查询结果的几种方法以及异同,并用实例说明几种查询方式的具体应用。
关键词:PowerBuilder;查询;数据窗口;检索参数
中图分类号:P413
1 PB软件基本应用原理
PB被称为软件市场上最强有力的应用开发工具的主要原因之一,是因为它拥有数据窗口技术。通过数据窗口,可以对后台数据库数据进行增加,查询,修改,删除,更新等操作。本文所介绍的就是利用数据窗口进行对数据的查询工作。[1]
在开发C/S结构体系的PB数据库应用程序时,对于查询,有一种通用的模式,就是用户输入各种限制条件,在数据窗口中显示给定数据检索的结果。在软件实际使用中,用户可能通过单一条件进行查询,也可能通过给定多个条件进行组合查询。本文将通过实例对这两种方法的应用进行探讨。
2 利用数据窗口中的检索参数的单一条件查询
与其他开发工具相比,PB中利用数据窗口中的检索参数实现单一条件查询,简单易行,避免了大量代码的书写,缩短了开发时间。以员工管理系统为例,通过员工编号查询相关编号的个人信息,员工编号与个人信息所在表为renyuan。具体实现方法如下:
新建数据窗口dw_renyuan,为该数据窗口对象创建检索参数is_number,并对该数据窗口对象SELECT语句中的WHERE子句中增加一个条件number=:is_number,完整的SELECT语句如下:
SELECT"renyuan"."number","renyuan"."name","renyuan"."sex","renyuan".”birth”,"renyuan"."time","renyuan"."education","renyuan"."beizhu"FROM"renyuan"WHERE "renyuan"."number" = :is_number与此同时,在窗口里查询按钮的click事件中,将查询值赋值给string类型的is_number,并执行以下检索操作dw_1.retrieve(is_number)
3 运用下拉列表框查询的单一条件查询
将下拉列表框用作查询框,在查询时,就可以不必输入文字就能达到查询的目的,而只需要从下拉列表框中选择一个需要查询的列值即可。例如,可以将“性别”这一列设计成下拉框的形式。同样的,也可以利用下拉列表框实现统一一定数量的查询于标准界面。这样用户即使使用的查询对象不同,依然能使用相同的查询窗口及操作。提高了查询的效率。
以员工管理系统为例,说明下拉列表框实现多项查询条件的应用。在一个下拉框里布置三项查询条件——人员编号,人员姓名,文化程度,供用户选择。将单行框作为用户输入查询值的地方。以下用到的方法为sql语句进行查询,使用setsqlselect函数将查询结果在数据窗口里显示出来。[2]
Choose ddlb_1.text
Case “人员编号”
sql=”Select * from renyuan where number like ‘”+a+”’ ”
Case “姓名”
sql=”Select * from renyuan where name like ‘”+a+”’ ”
Case “文化程度”
sql=”Select * from renyuan where education like ‘”+a+”’ ”
end Choose
dw_1.setsqlselect(sql)
dw_1.retrieve( )
4 组合条件查询
虽然单一条件的查询可以满足大多数用户查询的需求,但是用户也可能需要从多个条件任意选择一个或者多个条件,要求系统列出满足这些条件交集的数据。实现方法与单一条件查询有一定相似之处,仍然可以利用检索参数以及SQL语句进行实现。还是以员工管理系统为例:
首先需要定义检索参数。Is_number,is_name,is_education。其他查询条件像sex,birth,time可以利用下拉框,或者特定日期控件实现。避免了因日期格式输入错误,导致查询不畅,也能提高用户查询的效率。定義数据窗口控件dw_cx。在设计中采用以下SQL语句:SELECT "renyuan"."number","renyuan"."name","renyuan"."sex","renyuan"."birth", "renyuan"."time","renyuan"."education","renyuan"."beizhu"FROM"renyuan"WHERE "renyuan"."number" = :is_number or :is_number=null) AND ( "renyuan"."name" = :is_name or :is_name=null) AND ( "renyuan"."education" = :is_education or :is_education=null)
巧妙的运用null,可以使SQL语句可以灵活的实现一个或者几个条件的查询。与前面所讲相同,在查询按钮下执行检索操作,点击查询按钮检索之前定义的检索变量,就可以达到查询的目的,如若想达到模糊查询的目的,只需在传入参数的值后面加“%”。
5结 语
本文从多方面研究了基于PowerBuilder开发工具进行数据查询的几种方法及技巧,这几种方法都在实践中得到了较好的应用。
参考文献
[1]陈弘原. PowerBuilder8.0实用教程[M]. 北京:中国水利水电出版社,2002.171~172
[2]蒋红,文平.PowerBuilder4.0/5.0事件、属性与函数[M].北京:北京晓通网络数据库研究所,1997.336~337
关键词:PowerBuilder;查询;数据窗口;检索参数
中图分类号:P413
1 PB软件基本应用原理
PB被称为软件市场上最强有力的应用开发工具的主要原因之一,是因为它拥有数据窗口技术。通过数据窗口,可以对后台数据库数据进行增加,查询,修改,删除,更新等操作。本文所介绍的就是利用数据窗口进行对数据的查询工作。[1]
在开发C/S结构体系的PB数据库应用程序时,对于查询,有一种通用的模式,就是用户输入各种限制条件,在数据窗口中显示给定数据检索的结果。在软件实际使用中,用户可能通过单一条件进行查询,也可能通过给定多个条件进行组合查询。本文将通过实例对这两种方法的应用进行探讨。
2 利用数据窗口中的检索参数的单一条件查询
与其他开发工具相比,PB中利用数据窗口中的检索参数实现单一条件查询,简单易行,避免了大量代码的书写,缩短了开发时间。以员工管理系统为例,通过员工编号查询相关编号的个人信息,员工编号与个人信息所在表为renyuan。具体实现方法如下:
新建数据窗口dw_renyuan,为该数据窗口对象创建检索参数is_number,并对该数据窗口对象SELECT语句中的WHERE子句中增加一个条件number=:is_number,完整的SELECT语句如下:
SELECT"renyuan"."number","renyuan"."name","renyuan"."sex","renyuan".”birth”,"renyuan"."time","renyuan"."education","renyuan"."beizhu"FROM"renyuan"WHERE "renyuan"."number" = :is_number与此同时,在窗口里查询按钮的click事件中,将查询值赋值给string类型的is_number,并执行以下检索操作dw_1.retrieve(is_number)
3 运用下拉列表框查询的单一条件查询
将下拉列表框用作查询框,在查询时,就可以不必输入文字就能达到查询的目的,而只需要从下拉列表框中选择一个需要查询的列值即可。例如,可以将“性别”这一列设计成下拉框的形式。同样的,也可以利用下拉列表框实现统一一定数量的查询于标准界面。这样用户即使使用的查询对象不同,依然能使用相同的查询窗口及操作。提高了查询的效率。
以员工管理系统为例,说明下拉列表框实现多项查询条件的应用。在一个下拉框里布置三项查询条件——人员编号,人员姓名,文化程度,供用户选择。将单行框作为用户输入查询值的地方。以下用到的方法为sql语句进行查询,使用setsqlselect函数将查询结果在数据窗口里显示出来。[2]
Choose ddlb_1.text
Case “人员编号”
sql=”Select * from renyuan where number like ‘”+a+”’ ”
Case “姓名”
sql=”Select * from renyuan where name like ‘”+a+”’ ”
Case “文化程度”
sql=”Select * from renyuan where education like ‘”+a+”’ ”
end Choose
dw_1.setsqlselect(sql)
dw_1.retrieve( )
4 组合条件查询
虽然单一条件的查询可以满足大多数用户查询的需求,但是用户也可能需要从多个条件任意选择一个或者多个条件,要求系统列出满足这些条件交集的数据。实现方法与单一条件查询有一定相似之处,仍然可以利用检索参数以及SQL语句进行实现。还是以员工管理系统为例:
首先需要定义检索参数。Is_number,is_name,is_education。其他查询条件像sex,birth,time可以利用下拉框,或者特定日期控件实现。避免了因日期格式输入错误,导致查询不畅,也能提高用户查询的效率。定義数据窗口控件dw_cx。在设计中采用以下SQL语句:SELECT "renyuan"."number","renyuan"."name","renyuan"."sex","renyuan"."birth", "renyuan"."time","renyuan"."education","renyuan"."beizhu"FROM"renyuan"WHERE "renyuan"."number" = :is_number or :is_number=null) AND ( "renyuan"."name" = :is_name or :is_name=null) AND ( "renyuan"."education" = :is_education or :is_education=null)
巧妙的运用null,可以使SQL语句可以灵活的实现一个或者几个条件的查询。与前面所讲相同,在查询按钮下执行检索操作,点击查询按钮检索之前定义的检索变量,就可以达到查询的目的,如若想达到模糊查询的目的,只需在传入参数的值后面加“%”。
5结 语
本文从多方面研究了基于PowerBuilder开发工具进行数据查询的几种方法及技巧,这几种方法都在实践中得到了较好的应用。
参考文献
[1]陈弘原. PowerBuilder8.0实用教程[M]. 北京:中国水利水电出版社,2002.171~172
[2]蒋红,文平.PowerBuilder4.0/5.0事件、属性与函数[M].北京:北京晓通网络数据库研究所,1997.336~337