在考生文件夹下有仓库数据库CK3,包括如下所示两个表文件: CK(仓库号C(4),城市C(8),面积N(4)) 2G(仓库号C(4),职工号C(4),工资N(4)) 设计一个名为ZC3的菜单,菜单中有两个菜单项“统计”和“退出”。

admin2009-02-15  25

问题 在考生文件夹下有仓库数据库CK3,包括如下所示两个表文件:
   CK(仓库号C(4),城市C(8),面积N(4))
   2G(仓库号C(4),职工号C(4),工资N(4))
   设计一个名为ZC3的菜单,菜单中有两个菜单项“统计”和“退出”。
   程序运行时,单击“统计”菜单项应完成下列操作:检索出所有职工的工资都大于。1220元的职工所管理的仓库信息,将结果保存在wh1数据表文件中,该文件的结构和CK数据表文件的结构一致,并按面积升序排序。
   单击“退出”菜单项,程序终止运行。
   (注:相关数据表文件存在于考生文件夹下)

选项

答案利用菜单设计器定义两个菜单项,在菜单名称为“统计”的菜单项的结果列中选择“过程”,并通过单击“编辑”按钮打开一个窗中来添加“统计”菜单项要执行的命令。在菜单名称为“退出”的菜单项的结果列中选择“命令”,并在后面的“选项”列中输入以下退出菜单的命令:SET SYSMENU TO DEFAULT “统计”菜单项要执行的程序: 首先中打开数据库文件OPEN DATABASE CK3.DBC 下面我们分析所要用到的查询语句的实现,题面要求“检索出所有职工的工资都大于1220的职工所管理的仓库信息”,所以得到满足以上条件的仓库号成为解答本题的关键。“所有职工的工资都大于1220的职工所管理的仓库”这个条件可以将其分解为同时满足以下两个条件的结果“仓库号不存在于职工的工资小于等于1220的职工所管理的仓库号中”并且“仓库号存在于表ZG中”,而以上两个条件我们可以利用SQL轻松写出来。所以最后形成的查询语句以下:SELECT*FROM CK WHERE仓库号NOT IN(SELECT仓库号FROM ZGWHERE 工资<=1220)AND仓库号IN(SELECT仓库号FROMZG)INTO TABLE wh1. dbf。后面的INTOTABLE wh1 .dbf决定了查询的结果是生成一个wh1.dbf文件。 本题还考对查询的排序和查询的去向进行了考核,可以用ORDER BY order_ Item[ASC|DESC]来让查询的结果按某一列或某几列的升序(ASC)或降序(DESC)进行排列。而查询的去向可以通过INTO TABLE str Table Name而直接生成一个文件名为str Table Name的.DBF表。

解析
转载请注明原文地址:https://kaotiyun.com/show/i4KZ777K
0

最新回复(0)