在考生文件夹下有仓库数据库CHAXUN3包括三个表文件: ZC(仓库号C(4),职工号C(4),工资N(4)) DGD(职工号C(4),供应商号C(4),订购单号C(4),订购日期D,总金额N(10)) GYS(供应商号C(4),供应商名

admin2009-02-15  26

问题 在考生文件夹下有仓库数据库CHAXUN3包括三个表文件:
   ZC(仓库号C(4),职工号C(4),工资N(4))
   DGD(职工号C(4),供应商号C(4),订购单号C(4),订购日期D,总金额N(10))
   GYS(供应商号C(4),供应商名C(16),地址C(10))
   设计一个名为CX3的菜单,菜单中有两个菜单项“查询”和“退出”。
   程序运行时,单击“查询”应完成下列操作:检索出由工资多于1230元的职工向北京的供应商发出的订购单信息,并将结果存放在ord1文件(和DGD文件具有相同的结构)中。
   单击“退出”菜单项,程序终止运行。
   (注:相关数据表文件存在于考生文件夹下)

选项

答案利用菜单设计器定义两个菜单项,在菜单名称为“查询”的菜单项的结果列中选择“过程”,并通过单击“编辑”按钮打开一个窗口来添加“查询”菜单项要执行的命令。在菜单名称为“退出”。的菜单项的结果列中选择“命令”,并在后面的“选项”列的中输入以下退出菜单的命令:SET SYSMENU TO DEFAULT “查询”菜单项要执行的程序: 首先打开数据库Open database CHAXUN3.dbc 我们可以通过下面的查询得到工资多于1230的所有职工的职工号:SELECT职工号FROM ZC WHERE工资>1230 可以通过下面的查询得到地址在北京的所有供货商的供货商号:SELECT供货商号FROM GYS WHERE地址="北京" 而题面所要求的正是同时满足以上两个条件的订购单信息,也就是职工号满足第一个条件,可用职工号IN(SELECT职工号FROM ZG WHERE工资)1230)来实现;供货商号满足第二个条件,可用供货商号IN (SELECT供货商号FROM GYS WHERE地址="北京")来实现。因此可得到满足条件的订购单的SQL查询为: SELECT*FROMDG DWHERE职工号IN(SELECT职工号FROM ZC WHERE 工资>1230)AND供货商号IN(SELECT供货商号FROM GYS WHERE地址="北京")ORDER BY总金额DESC INTO TABLE ord1 本题还考对查询的排序和查询的去向进行了考核.可以用ORDER BY order_Item[ASC|DESC]来让查询的结果按某一列或某几列的升序(ASC)或降序(DESC)进行排列。而查询的去向可以通过INTO TABLE str Table Name而直接生成一个文件名为str Table Name的.DBF表。

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

最新回复(0)