在考生文件夹下有数据库“gz” 包括数据表文件:zgk(仓库编号C(4) 职工编号C4) 工
问题详情
在考生文件夹下有数据库“gz”,包括数据表文件:zgk(仓库编号C(4),职工编号C4),工资N(4))。设计一个名为tj的菜单,菜单中有两个菜单项“统计”和“退出”。
程序运行时,单击“统计”菜单项应完成下列操作:检索出工资大于或等于本仓库职工平均工资的职工信息,并将这些职工信息按照仓库编号升序排序,在仓库号相同的情况下再按职工编号升序存放到“result”文件中,该数据表文l 件和“zgk”数据表文件具有相同的结构。
单击“退出”菜单项,程序终止运行。
注意:相关数据表文件存在于考生文件夹下。请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:
【考点指引】本大题主要考查利用SQL语句进行分组计算查询,在本题应了解SQL中求平均值函数AVG的使用;在菜单的设计过程中主要应注意两个菜单命令在“统计”下拉列表框中应选择的类型。
【操作步骤】
①选择【文件】→【新建】命令,选择“菜单”,单击“新建文件”按钮,再单击“菜单”按钮,打开菜单设计器,在“菜单名称”中输入“统计”,在“结果”下拉列表框中选择“过程”,单击“创建”按钮创建“统计”过程,在菜单过程代码编辑窗口中输入以下代码:
SET TALK OFF
SET SAFETY OFF
0PEN DATABASE gz
SELECT仓库编号,AVG(工资)AS pjgz FROM zgk GROUP BY仓库编号INTO CURS OR curl
SELECT zgk.*INTO TABLE result FROM zgk,curl WHERE zgk.仓库编号=curl.仓库编号and工资>= pjgz ORDER BY zgk.仓库编号,职工编号
CLOSEALL
SET SAFETY ON
SET TALK ON
关闭菜单过程代码编辑窗口回到菜单设计器。
②单击下一行,输入菜单名称“退出”,在“结果”下拉列表框中选择“命令”,在右边的“命令”文本框中编写程序代码:SET SYSMENU TO DEFAULT。
③选择【菜单】→【生成】命令,将菜单保存为“tj”,生成一个菜单文件“tj.mpr”。关闭菜单设计窗口,在命令窗口输入命令:DO tj.mpr,看到Visual FoxPr0的菜单栏被新建的菜单所代替,单击“退}b”菜单命令将恢复系统菜单。
④执行“统计”菜单命令后,系统自动生成新数据表文件“result.dbf”用来保存查询结果。