在管理信息系统中,查询系统占了相当重要的地位(SQL的中文就是结构化查询语言),因为它是向用户开放的,界面一定要友善,要让别人一看就会操作。
根据查询结果记录的个数来分,查询可分为两种:
1.唯一记录查询。如:从键盘输入记录号,查询该人的档案。
2. 模糊查询,结果记录可能很多。
这里我们以制作婚姻介绍系统为例子,包括了难度较大的模糊查询,多按钮式选择界面,记录的连动。
工作原理:通过自己定义变量的来传递选择的条件,如:性别可定义变量sex,年龄可定义变量old。注意变量要先定义,后使用。
一. 多按钮选择界面的制作。在分组框内多个Radio Button在同一时刻只能选中一个。
操作步骤:新建一名字为b2的窗口,窗口内放置控件如下图。定义变量(重要),按菜单Declare的Instance Variables,在对话框中定义实例变量,键盘输入:
string sex
integer old
定义变量后查询按钮的Click事件中输入如下脚本:
if rb_1.checked=true then
sex="w"
elseif rb_2.checked=true then
sex="m"
end if
if rb_3.checked=true then
old=30
elseif rb_4.checked=true then
old=40
elseif rb_5.checked=true then
old=50
end if
sle_1.text=sex
sle_2.text=string(old)
若运行窗口(注意不是运行应用程序),选择后按查询按钮,结果如下图,则变量已被正确地自动赋值。
二.数据的过滤。接下来要进行过滤操作,即将变量传给SQL语言中的Where语句,在哪里写SQL语句呢?在数据窗口下方的Where标签页里,可以自动生成SQL的过滤语句。
在SQL anywhere里制作建立并输入下表,表名为aaa1,
表头:
字段 类型 长度 标题头
id char 10 编号
name char 10 姓名
old integer 年龄
sex char 10 性别
status char 30 状况
表aaa1的内容:
id name old sex status
1 小王 23 女 导游会英语
2 小李 34 男 个体收入高
3 小林 45 女 会计
4 小黄 27 男 电脑专家
5 小郑 38 女 教师
在数据窗口中新建立两个数据窗口:数据来源都为aaa1表,要求如下:
数据窗口名 字段 数据源形式 显示格式 SQL过滤语句
Ad1 Id,name,old,sex SQL Select 表格 "aaa1"."sex"=:sex and"aaa1"."old"<=:old
Ad2 Id,name,old,sex,status SQL Select 自由格式 "aaa1"."id"=:id
注意写SQL过滤语句是:在数据窗口中,先点中Id和 name两个字段,在窗口下方按Where标签页,按Colume,并在Cloume的下拉条中选中"aaa1"."sex",在Valua的一栏中填入 :sex,注意,这里的sex前面有一冒号,再在Cloume的下拉条中选中"aaa1". "old",在Operator栏选<=,在Valua的一栏中填入 :old,按窗口上方的Desion菜单,选Retriveal Arguments,在Name一栏填sex,注意,这里的sex前面没有冒号,type一栏选String,再在Name一栏的下一行填old,type一栏选number。同时,为让个人资料的表格数据按年龄升序排列,在窗口下方按Sort标签页,将左边的ID字段拖到右边。按Syntax标签页可看到自动生成的SQL语句。
SELECT "aaa1"."id",
"aaa1"."name",
"aaa1"."old",
"aaa1"."sex"
FROM "aaa1"
WHERE ( "aaa1"."sex" = :sex ) AND
( "aaa1"."old" <= :old )
ORDER BY "aaa1"."old" ASC
这里SQL语句的意思是选取性别=变量sex,年龄<=变量old的记录。只显示几个字段。尽管在Pb中,这些语句是通过拖动图标自动生成,但看一看,了解其工作原理还是有好处的。
三.数据的连动.可以用鼠标让记录的连动的窗口制作如下图,这里主要用到函数getitemString(getrow(),1),它可取得双击鼠标当前行的左边第一个字符串,即数据窗口一内当前行id字段的值,并赋给实例变量tttt,tttt再传给数据窗口二的SQL的过滤语句,Where id=:id,就可在数据窗口二中显示id=tttt的记录。在这两个数据窗口之间,变量tttt从数据窗口一跑到数据窗口二,起到象桥梁般的连接作用。数据窗口一即dw_1的鼠标单击事件的脚本如下:
ttttt=dw_1.getitemString (getrow(),1)
sle_1.text=ttttt
b4.dw_1.settransobject(sqlca)
b4.dw_1.retrieve(b3.ttttt)
dw_2.settransobject(sqlca)
dw_2.retrieve(ttttt)
分享到:
相关推荐
本系统“powerbuilder简单学生成绩管理系统”显然是利用PowerBuilder来构建的一个教育领域的信息管理软件,旨在帮助学校或教育机构更有效地管理和分析学生的成绩数据。 一、PowerBuilder基础 PowerBuilder由Sybase...
在本系统中,PowerBuilder被用于构建用户友好的界面和实现与数据库的交互。 学生选课系统的核心功能包括: 1. **用户登录**:系统提供学生、教师和管理员等多种角色的登录入口,确保数据安全和权限控制。学生仅能...
【PowerBuilder制作的水果机小游戏】是一个利用PowerBuilder9开发的趣味性应用程序,它将编程技术与娱乐元素相结合,提供了一种轻松休闲的娱乐方式。PowerBuilder是一款强大的可视化数据库应用开发工具,以其特有的...
PowerBuilder可以设计用户友好的界面,通过事件驱动编程实现借阅操作,例如点击“借书”按钮时,系统会检查图书状态并更新相关信息。 3. **用户管理**:管理员需要对用户进行权限控制,包括添加、删除和修改用户...
PowerBuilder是一款强大的数据库应用开发工具,尤其在管理信息系统的构建中有着广泛的应用。它以其可视化、事件驱动的编程模型,简化了数据库应用的开发过程,使得开发者能够更专注于业务逻辑而不是底层技术细节。本...
PowerBuilder通过查询这些键值,获取到系统安装的所有字体名称、类型以及它们的关联文件路径。 获取系统字体列表后,开发人员可以在PowerBuilder的代码中使用这些信息。例如,可以通过编写脚本动态改变控件的字体,...
PowerBuilder是一款强大的数据库应用开发工具,它以其独特的DataWindow控件和可视化编程界面深受程序员喜爱。在这个"PowerBuilder 抽奖程序源码"中,我们可以深入理解如何利用PowerBuilder进行事件驱动编程,以及...
总的来说,PowerBuilder账务处理系统是一个综合性的应用,它结合了数据库设计、用户界面开发、业务逻辑处理等多个IT领域的知识。通过PowerBuilder的高效开发能力和丰富的控件库,可以构建出符合会计行业需求的稳定、...
1. PowerBuilder基础:PowerBuilder是由Sybase(现为SAP的一部分)开发的第四代编程语言(4GL),它支持事件驱动编程模型,让开发者能够快速构建数据库应用。其核心特性包括数据窗口、脚本语言、对象库和可视化设计...
在这个"power builder 计算器基础制作 含代码"的主题中,我们将深入探讨如何使用PowerBuilder来创建一个简单的计算器应用。 首先,让我们理解PowerBuilder的基础。PowerBuilder是一种第四代编程语言(4GL),其主要...
本项目“PowerBuilder学生管理系统”是利用PowerBuilder这一工具进行开发的一个实例,旨在实现对学生信息的有效管理。 在PowerBuilder中,学生管理系统可能采用了数据窗口(DataWindow)技术来展示和操作数据库中的...
PowerBuilder是一款强大的数据库应用开发工具,它以其独特的DataWindow控件和可视化编程界面深受程序员喜爱。在本资源“PowerBuilder界面美化.zip”中,你将找到关于如何提升PowerBuilder应用程序界面美观度的宝贵...
总结,"PowerBuilder图书管理系统"充分利用了PowerBuilder的特性,实现了图书的全面管理,包括图书信息存储、查询、借阅、归还、统计等功能。对于学习和理解PowerBuilder的开发实践以及图书管理系统的构建,这是一个...
PowerBuilder是一款强大的面向对象的第四代编程工具,主要用于开发企业级的应用系统。在这个"PowerBuilder开发简单计算器"项目中,我们将探讨如何利用PowerBuilder的基本功能构建一个基础的计算器应用程序。 首先,...
在本系统中,PowerBuilder 9.0的数据库应用用于存储图书信息、读者信息和借书信息,使得图书管理更加方便和高效。 知识点4:系统结构组成 图书管理系统的结构组成包括多个模块,如新书入库模块、旧书报废模块、图书...
系统中的登录界面、学生信息录入界面、查询界面等都是通过这一功能创建的。 2. **数据窗口组件**:PowerBuilder的数据窗口是其核心特性之一,它可以方便地与各种数据库进行交互。在学籍管理系统中,数据窗口用于...
PowerBuilder提供了数据窗口(DataWindow)组件,可以方便地连接到数据库并构建用户友好的查询界面。用户输入查询条件后,系统通过SQL查询语句与后台数据库交互,返回匹配的图书信息。 其次,记录的修改功能允许...
4. **用户界面设计**:PowerBuilder 9.0提供了丰富的控件和设计工具,使得用户界面的设计更加直观和高效。同时,9.0版本还引入了.NET兼容性,使得在Windows平台上的应用更具扩展性。 5. **集成开发环境(IDE)**:9.0...
本《PowerBuilder数据库系统开发实例导航》光盘旨在帮助开发者深入理解和掌握PowerBuilder在数据库系统开发中的应用技巧。 首先,我们要理解PowerBuilder的核心概念。PowerBuilder的主要组件包括Workbench(工作台...