现有医院数据库doct3,包括3个表文件:yisheng.dbf(医生)、yao.dbf(药品)、chufang.dbf(处方)。设计一个名为chufang3的菜单,菜单中有两个菜单项“查询”和“退出”。 程序运行时,单击“查询”应完成下列操作:查询

admin2009-02-15  26

问题 现有医院数据库doct3,包括3个表文件:yisheng.dbf(医生)、yao.dbf(药品)、chufang.dbf(处方)。设计一个名为chufang3的菜单,菜单中有两个菜单项“查询”和“退出”。
   程序运行时,单击“查询”应完成下列操作:查询同一处方中,包含“感冒”两个字的药品的处方号、药名和生产厂,以及医生的姓名和年龄,把查询结果按处方号升序排序存入jg9资料表中。jg9的结构为(姓名,年龄,处方号,药名,生产厂)。最后统计这些医生的人数(注意不是人次数),并在jg9中追加一条记录,将人数填入该记录的处方号字段中。
   单击“退出”菜单项,程序终止运行。  (注:相关资料表文件存在于考生文件夹下)

选项

答案在命令窗口输入命令:CREATE MENU chufang3,系统弹出一个“新建菜单”对话框,在对话框中单击“菜单”按钮,进入菜单设计器环境。根据题目要求,首先输入两个主菜单名称“查询”和“退出”,接着在“查询”菜单行的“结果”下拉列表中选择“过程”选项(用于编写程序),在“退出”菜单行的“结果”下拉列表中选择“命令”选项。 单击“查询”菜单行中的“查询”按钮,进入程序设计的编辑窗口,在命令窗口中输入如下程序段: *********“查询”菜单命令的程序设计*********** SET TALK OFF SET SAFETY OFF SELECT姓名,年龄,处方号,药名,生产厂; FROM yisheng,yao,chufang; WHERE chufang.药编号=yao.药编号; AND chufang.职工号=yisheng.职工号AND药名IN("感冒"); ORDER BY处方号; INTO TABLE js9 SELECT * FROM jg9 GROUP BY姓名INTO cursor curtable INSERT INTO jg9(处方号)VALUES(J) 在“退出”菜单项的“命令”文本框中编写程序代码:SET SYSMENU TO DEFAULT。 选择菜单命令“菜单”—“生成”,生成一个菜单文件chufang3.mpr。关闭设计窗口,在命令窗口输入命令:DO chufang3.mpr,看到Visual FoxPro的菜单栏被新建的菜单所代替,单击“退出”菜单命令将恢复系统菜单。 执行“查询”菜单命令后,系统将查询结果自动保存到表jg9.dbf中。

解析 本大题考查的主要是利用SQL语句进行多表查询,其中只要注意每两个表之间进行的关联字段即可,部分语句可以参考第二大题2小题的设计,最后还要注意的是人数的统计,因为要统计的人数,不是人次数,因此可以通过姓名字段的排序,将排序结果存放到一个临时表中,然后通过COUNT函数统计出人数(此函数不统计相邻的重复出现的数据)。
转载请注明原文地址:https://jikaoti.com/ti/T9M7FFFM
0

最新回复(0)