VFP上机100题库及答案WORD版
发布时间:2024-11-25
发布时间:2024-11-25
第 1 套
一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)
注意:基本操作题为4道SQL题,请将每道题的SQL命令粘贴到SQL1.txt文件,每条命令占一行,第1道题的命令是第1行,第2道题的命令是第2行,以此类推;如果某道题没有做相应行为空。
1、利用SQL SELECT命令将表stock_sl.dbf复制到stock_bk.dbf。
2、利用SQL INSERT命令插入记录("600028",4.36, 4.60, 5500)到stock_bk.dbf表。
3、利用SQL UPDATE命令将stock_bk.dbf表中"股票代码"为"600007"的股票"现价"改为8.88。
4、利用SQL DELETE命令删除stock_bk.dbf表中"股票代码"为"600000"的股票。
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹下建立数据库sc2,将考生文件夹下的自由表score2添加进sc2中。根据score2表建立一个视图score_view,视图中包含的字段与score2表相同,但视图中只能查询到积分小于等于1500的信息。然后利用新建立的视图查询视图中的全部信息,并将结果按积分升序存入表v2。
2、建立一个菜单filemenu,包括两个菜单项"文件"和"帮助","文件"将激活子菜单,该子菜单包括"打开"、"存为"和"关闭"三个菜单项;"关闭"子菜单项用SET SYSMENU TO DEFAULT命令返回到系统菜单,其他菜单项的功能不做要求。
三、综合应用(1小题,计30分)
在考生文件夹下有学生成绩数据库XUESHENG3,包括如下所示三个表文件以及相关的索引文件: 1、XS.DBF(学生文件:学号 C8,姓名 C8,性别 C2,班级 C5;另有索引文件XS.IDX,索引键:学号) 2、CJ.DBF(成绩文件:学号 C8,课程名 C20,成绩 N5.1;另有索引文件CJ.IDX,索引键:学号) 3、CJB.DBF(成绩表文件:学号 C8,班级 C5,姓名 C8,课程名 C12,成绩N5.1)。设计一个名为XS3的菜单,菜单中有两个菜单项"计算"和"退出"。 程序运行时,单击"计算"菜单项应完成下列操作: 将所有选修了"计算机基础"的学生的"计算机基础"成绩,按成绩由高到低的顺序填到成绩表文件CJB.DBF中(事前须将文件中原有数据清空)。单击"退出"菜单项,请使用SET SYSMENU TO DEFAULT命令使程序终止运行。(注:相关数据表文件存在于考生文件夹下)
基本操作题答案:(注意:文本文件易生成错)
1、select * from stock_sl into table stock_bk
2、insert into stock_bk value("600028", 4.36, 4.60, 5500)
3、update stock_bk set 现价=8.88 where 股票代码="600007"
4、delete from stock_bk where 股票代码="600000"
简单应用题提示: 1、可用设计器做,也可用命令做。 2、set sysmenu to default 不能简写,原样照抄。第1小题命令如下: create view score_view as sele * from score2 where 积分<=1500
sele * from score_view order by 积分 into table v2
综合应用题答案:
“计算”菜单项的过程代码为:
close all
sele xs.学号,班级,姓名,课程名,成绩 from xs,cj where xs.学号=cj.学号 and 课程名="计算机基础" order by 成绩 ;
desc into array aaa
delete from cjb
insert into cjb from array aaa
“退出”菜单项的命令代码为: set sysmenu to default
第 2 套
一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)
在考生文件夹下完成下列操作(在"成绩管理"数据库中完成):
1、为"学生"表在"学号"字段上建立升序主索引,索引名和索引表达式均为学号。
2、为"学生"表的"性别"字段定义有效性规则,规则表达式为:性别$"男女",出错提示信息是:"性别必须是男或女"。
3、在"学生"表的"性别"和"年龄"字段之间插入一个"出生日期"字段,数据类型为"日期型"(修改表结构)。
4、用SQL的UPDATE命令将学生"王三风"的出生日期修改为1983年5月1日,并将该语句粘贴在SQL2.TXT文件中(第一行、只占一行)。
二、简单应用(2小题,每题20分,计40分)
1、根据考生文件夹下的txl表和jsh表建立一个查询query2,查询出单位是"南京大学" 的所有教师的姓名、职称、电话,要求查询去向是表,表名是query2.dbf,并执行该查询。
2、建立表单enterf,表单中有两个命令按钮,按钮的名称分别为cmdin和cmdout,标题分别为"进入"和"退出"。
三、综合应用(1小题,计30分)
在考生文件夹下有仓库数据库CK3,包括如下所示两个表文件: CK(仓库号C(4),城市C(8),面积N(4));ZG(仓库号C(4),职工号C(4),工资N(4))。设计一个名为ZG3的菜单,菜单中有两个菜单项"统计"和"退出"。程序运行时,单击"统计"菜单项应完成下列操作:检索出所有职工的工资都大于1220元的职工所管理的仓库信息,将结果保存在wh1数据表(WH1为自由表)文件中,该文件的结构和CK数据表文件的结构一致,并按面积升序排序。单击"退出"菜单项,请使用SET SYSMENU TO DEFAULT命令使程序终止运行。(注:相关数据表文件存在于考生文件夹下)
基本操作题答案:
4、UPDA 学生 SET 出生日期={^1983-05-01} WHER 姓名="王三风"
简单应用题提示: 本题必须用设计器做要注意二点, 1 选表必须先选jsh表,后选txl表; 选字段必须按次序选jsh.姓名,jsh.职称,txl.电话。其它情况均不得分,请务必注意。
综合应用题答案:
“统计”菜单项的过程代码为:
Clos all
SELECT * FROM CK WHERE 仓库号 NOT IN (SELECT 仓库号 FROM ZG WHERE 工资<=1220) AND 仓库号 IN (SELECT 仓库号 FROM ZG); ORDER BY 面积 INTO TABLE wh1
“退出”菜单项的命令代码为:SET SYSMENU TO DEFAULT (原样抄命令,不能省)
第 3 套
一、基本操作(共四小题,第1和2题是7分、第3和4题是8分)
1、请在考生文件夹下建立一个数据库KS4。
2、将考生文件夹下的自由表STUD、COUR、SCOR加入到数据库KS4中。
3、为STUD表建立主索引,索引名和索引表达式均为学号;为COUR表建立主索引,索引名和索引表达式均为课程编号;
为SCOR表建立两个普通索引,其中一个索引名和索引表达式均为学号;另一个索引名和索引表达式均为课程编号。
4、在以上建立的各个索引的基础上为三个表建立联系。
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹中有一个数据库STSC,其中有数据库表STUDENT、SCORE和COURSE。利用SQL语句查询选修了"网络工程"课程的学生的全部信息,并将结果按学号降序存放在NETP.DBF文件中(库的结构同STUDENT,并在其后加入课程号和课程名字段)。
2、在考生文件夹中有一个数据库STSC,其中有数据库表STUDENT,使用一对多报表向导制作一个名为CJ2的报表,存放在考生文件夹中要求:选择父表STUDENT 表中学号和姓名字段,从子表SCORE中选择课程号和成绩,排序字段选择学号(升序),报表式样为简报式,方向为纵向。报表标题为"学生成绩表"。
三、综合应用(1小题,计30分)
在考生文件夹下有工资数据库WAGE3,包括数据表文件: ZG(仓库号C(4),职工号C(4),工资N(4))。 设计一个名为TJ3的菜单,菜单中有两个菜单项"统计"和"退出"。 程序运行时,单击"统计"菜单项应完成下列操作:检索出工资小于或等于本仓库职工平均工资的职工信息,并将这些职工信息按照仓库号升序,在仓库号相同的情况下再按职工号升序存放到EMP1(EMP1为自由表)文件中,该数据表文件和ZG数据表文件具有相同的结构。单击"退出"菜单项,请使用set sysmenu to default命令使程序终止运行(注:相关数据表文件存在于考生文件夹下)
简单应用题答案:
1、sele student.*,course.课程号,课程名 from student,course,score where 课程名="网络工程" and ;
student.学号=score.学号 and score.课程号=course.课程号 order by student.学号 desc into table netp
综合应用题答案:
“统计”菜单项的过程代码为:
SELECT 仓库号,AVG(工资) AS AvgGZ FROM ZG GROUP BY 仓库号 INTO CURSOR pj
SELECT ZG.* FROM ZG,pj WHERE ZG.仓库号=pj.仓库号 AND ZG.工资<=pj.AvgGZ ORDER BY zg.仓库号,职工号 INTO TABLE EMP1 “退出”菜单项的命令代码为:set sysmenu to default
第 4 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、请在考生文件夹下建立一个项目WY。
2、将考生文件夹下的数据库KS4加入到新建的项目WY中去。
3、利用视图设计器在数据库中建立视图 NEW_VIEW,视图包括GJHY表的全部字段(顺序同GJHY中的字段)和全部记录。
4、从表HJQK中查询"奖级"为一等的学生的全部信息(HJQK表的全部字段),并按分数的降序存入新表NEW1中。
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹下,有一个数据库CADB,其中有数据库表ZXKC和ZX。表结构如下:ZXKC(产品编号,品名,需求量,进货日期);ZX(品名,规格,单价,数量)。 在表单向导中选取一对多表单向导创建一个表单。要求:从父表zxkc中选取字段产品编号和品名,从子表zx中选取字段规格和单价,表单样式选取"阴影式",按钮类型使用"文本按钮",按产品编号升序排序,表单标题为"照相机",最后将表单存放在考生文件夹中,表单文件名是form2。
2、在考生文件夹中有数据库CADB,其中有数据库表ZXKC和ZX。建立单价大于等于800,按规格升序排序的本地视图CAMELIST,该视图按顺序包含字段产品编号、品名、规格和单价,然后使用新建立的视图查询视图中的全部信息,并将结果存入表v_camera。
三、综合应用(1小题,计30分)
在考生文件夹下有仓库数据库CHAXUN3包括三个表文件:ZG(仓库号 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文件具有相同的结构,ord1为自由表)中。单击"退出"菜单项,请使用set sysmenu to default命令使程序终止运行。(注:相关数据表文件存在于考生文件夹下)
基本操作题答案:
4、sele * from hjqk where 奖级="一等" order by 分数 DESC into table NEW1
简单应用题:
2、Open data cadb
create view CAMELIST as sele 产品编号,zx.品名,规格,单价 from zx,zxkc where 单价>=800 and zx.品名=zxkc.品名 ;
order by 规格
sele * from CAMELIST into table v_camera
综合应用题答案:
“查询”菜单项的过程代码为:
SELECT * FROM DGD WHERE 职工号 IN (SELECT 职工号 FROM ZG WHERE 工资>1230);
AND 供应商号 IN (SELECT 供应商号 FROM GYS WHERE 地址="北京") ORDER BY 总金额 DESC INTO TABLE ord1
“退出”菜单项的命令代码为:SET SYSMENU TO DEFAULT
第 5 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、打开数据库PROD_M及数据库设计器,其中的两个表的必要的索引已经建立,为这两个表建立永久性联系。
2、设置CATEGORY表中"种类名称"字段的默认值为:"饮料"。
3、为PRODUCTS表增加字段:优惠价格 N(8,2)。
4、如果所有商品的优惠价格是在进货价格基础上减少12%,计算所有商品的优惠价格。
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹中有一个数据库GCS,其中GONGCH表结构如下:GONGCH(编号C(4),姓名C(10),性别C(2),工资N(7,2),年龄N(2),职称C(10))。现在要对GONGCH表进行修改,指定编号为主索引,索引名和索引表达式均为编号;指定职称为普通索引,索引名和索引表达式均为职称;年龄字段的有效性规则在25至65之间(含25和65),默认值是45。
2、在考生文件夹中有数据库GCS,其中有数据库表GONGCH。在考生文件夹下设计一个表单,该表单为GCS库中GONGCH表窗口式输入界面,表单上还有一个名为cmdCLOSE的按钮,标题名为"关闭",点击该按钮,使用ThisForm.release退出表单。最后将表单存放在考生文件夹中,表单文件名是C_FORM。提示:在设计表单时,打开GCS数据库设计器,将GONGCH表拖入到表单中就实现了GONGCH表的窗口式输入界面,不需要其他设置或修改。
三、综合应用(1小题,计30分)
在考生文件夹下有仓库数据库GZ3,包括两个表文件:ZG(仓库号C(4),职工号C(4),工资N(4));DGD(职工号C(4),供应商号C(4),订购单号 C(4),订购日期D,总金额N(10))。首先在GZ3库中建立工资表:GJ3(职工号C(4),工资N(4)); 设计一个名为YEWU3的菜单,菜单中有两个菜单项"查询"和"退出"。程序运行时,单击"查询"应完成下列操作:检索出与供应商S7、S4和S6都有业务联系的职工的职工号和工资,并按工资降序存放到所建立的GJ3文件中。单击"退出"菜单项,请使用set sysmenu to default命令使程序终止运行。(注:相关数据表文件存在于考生文件夹下)
基本操作题答案:
4、Update PRODUCTS set 优惠价格=进货价格*(1-0.12)
综合应用题答案:
先在命令窗口输入下列命令:
OPEN DATABASE GZ3
CREATE TABLE GJ3(职工号 C(4),工资 N(4))
“查询”菜单项的过程代码为:
SELECT 职工号 FROM DGD WHERE 供应商号 IN ("S4","S6","S7") GROUP BY 职工号 HAVING COUNT(DISTINCT 供应商号)=3 ;
INTO CURSOR aaa
SELECT ZG.职工号,工资 FROM ZG,aaa WHERE ZG.职工号=aaa.职工号 ORDER BY 工资 DESC INTO ARRAY bbb
INSERT INTO GJ3 FROM ARRAY bbb
第 6 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、在考生文件夹下建立数据库KS7;并将自由表SCOR加入数据库中。
2、按下面给出的表结构。给数据库添加表STUD:
字段 字段名 类型 宽度 小数
1 学号 字符型 2
2 姓名 字符型 8
3 年龄 数值型 2 0
4 性别 字符型 2
5 院系号 字符型 2
3、为表STUD建立主索引,索引名为学号,索引表达式为学号,为表SCOR建立普通索引,索引名为学号,索引表达式为学号。
4、STUD表和SCOR表必要的索引已建立,为两表建立永久性的联系。
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹中有一个学生数据库STU,其中有数据库表STUDENT存放学生信息,使用菜单设计器制作一个名为STMENU的菜单,菜单包括"数据操作"和"文件"两个菜单栏。 每个菜单栏都包括一个子菜单。菜单结构如下:
数据操作
数据输出
文件
保存
退出
其中: 数据输出子菜单对应的过程完成下列操作:打开数据库STU,使用SQL的SELECT语句查询数据库表STUDENT中所有信息,然后关闭数据库。退出菜单项对应的命令为SET SYSMENU TO DEFAULT,使之可以返回到系统菜单。保存菜单项不做要求。
2、在考生文件夹中有一个数据库SDB,其中有数据库表STUDENT2、SC和COURSE2。三个表如下所示:STUDENT2(学号,姓名,年龄,性别,院系编号);
SC(学号,课程号,成绩,备注);COURSE2(课程号,课程名,先修课号,学分)。用SQL语句查询"计算机软件基础"课程的考试成绩在85分以下(含85分)的学生的全部信息并将结果按学号升序存入NOEX.DBF文件中。(库的结构同STUDENT2,并在其后加入成绩字段)。
三、综合应用(1小题,计30分)
现有医院数据库DOCT3,包括三个表文件:YISHENG.DBF(医生)、YAO.DBF(药品)、CHUFANG.DBF(处方)。设计一个名为CHUFANG3的菜单,菜单中有两个菜单项"查询"和"退出"。程序运行时,单击"查询"应完成下列操作:查询同一处方中,包含"感冒"两个字的药品的处方号、药名和生产厂,以及医生的姓名和年龄,把查询结果按处方号升序排序存入JG9数据表中。JG9的结构为:(姓名,年龄,处方号,药名,生产厂)。最后统计这些医生的人数(注意不是人次数),并在JG9中追加一条记录,将人数填入该记录的处方号字段中。 单击"退出"菜单项,请使用set sysmenu to default命令使程序终止运行。(注:相关数据表文件存在于考生文件夹下)
简单应用题答案:
1、“数据输出”菜单项的过程代码为:
open data stu
select * from student
close all
“退出”菜单项的命令代码为:set sysmenu to default
2、sele student2.*,成绩 from student2,sc,course2 where 课程名="计算机软件基础" and course2.课程号=sc.课程号 and ; sc.学号=student2.学号 and 成绩<=85 order by student2.学号 into table noex
综合应用题答案:
“查询”菜单项的过程代码为:
SELECT 姓名,年龄,处方号,药名,生产厂 FROM yisheng,yao,chufang WHERE CHUFANG.药编号=YAO.药编号 AND ;
CHUFANG.职工号=YISHENG.职工号 AND "感冒"$药名 ORDER BY 处方号 INTO TABLE JG9
SELECT * FROM JG9 GROUP BY 姓名 INTO CURSOR aaa
COUNT TO J
INSERT INTO JG9 (处方号) VALUES (J)
“退出”菜单项的命令代码为:set sysmenu to default
第 7 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、在考生文件夹下建立数据库CUST_M。
2、把考生文件夹下的自由表CUST和ORDER1加入到刚建立的数据库中。
3、为CUST表建立主索引,索引名为 primarykey,索引表达式为客户编号。
4、为ORDER1表建立侯选索引,索引名为candi_key,索引表达式为订单编号。为ORDER1表建立普通索引,索引名为regularkey,索引表达式为客户编号。
二、简单应用(2小题,每题20分,计40分)
1、根据order1表建立一个视图order_view,视图中包含的字段及顺序与order1表相同,但视图中只能查询到金额小于1000的信息。然后利用新建立的视图查询视图中的全部信息,并将结果按订单编号升序存入表v1。
2、建立一个菜单my_menu,包括两个菜单项"文件"和"帮助","文件"将激活子菜单,该子菜单包括两个菜单项"打开"、"存为"和一个"关闭"命令,"关闭"用SET SYSMENU TO DEFAULT命令返回到系统菜单,其他菜单项的功能不做要求。
三、综合应用(1小题,计30分)
在考生文件夹下有学生管理数据库BOOKS,数据库中有score表(含有学号、物理、高数、英语和学分5个字段,具体类型请查询表结构),其中前4项已有数据。请编写符合下列要求的程序并运行程序:设计一个名为myform的表单,表单中有两个命令按钮,按钮的名称分别为CMDYES和CMDNO,标题分别为"计算"和"关闭"。程序运行时,单击"计算"按钮应完成下列操作:(1)计算每一个学生的总学分并存入对应的学分字段。学分的计算方法是:物理60分以上(包括60分)2学分,否则0分;高数60分以上(包括60分)3学分,否则0分;英语60分以上(包括60分)4学分,否则0分。(2)根据上面的计算结果,生成一个新的表xf,(要求表结构的字段类型与score表对应字段的类型一致),并且按学分升序排序,如果学分相等,则按学号降序排序。单击"关闭"按钮,程序终止运行。
简单应用题答案:
1 create view order_view as sele * from order1 where 金额<1000
sele * from order_view order by 订单编号 into table v1
综合应用题答案: 重要提示,CMDYES和CMDNO要大写
Command1的click事件代码为:
update score set 学分=0
update score set 学分=学分+2 where 物理>=60
update score set 学分=学分+3 where 高数>=60
update score set 学分=学分+4 where 英语>=60
sele * from score order by 学分,学号 desc into table xf.dbf
Command2的Click事件代码为:thisform.release
第 8 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、在考生文件夹下建立项目SALES_M。
2、在新建立的项目中建立数据库CUST_M。
3、把自由表CUST和ORDER1加入到新建立的数据库中。
4、为确保ORDER1表元组唯一,请为ORDER1表建立候选索引,索引名为订单编号,索引表达式为订单编号。
二、简单应用(2小题,每题20分,计40分)
1、根据order1表和cust表建立一个查询query1,查询出公司所在地是"北京"的所有公司的名称、订单日期、送货方式,要求查询去向是表,表名是query1.dbf,并执行该查询。
2、建立表单my_form,表单中有两个命令按钮,按钮的名称分别为cmdYes和cmdNo,标题分别为"登录"和"退出"。
三、综合应用(1小题,计30分)
在考生文件夹下有股票管理数据库stock,数据库中有表stock_sl、stock_fk表。stock_sl的表结构是股票代码C(6)、买入价N(7.2)、现价N(7.2)、持有数量N(6)。stock_fk的表结构是股票代码C(6)、浮亏金额N(11.2)。 请编写并运行符合下列要求的程序:设计一个名为menu_lin的菜单,菜单中有两个菜单项"计算"和"退出"。程序运行时,单击"计算"菜单项应完成下列操作:(1)将现价比买入价低的股票信息存入stock_fk表,其中:浮亏金额=(买入价-现价)*持有数量(注意要先把表的stock_fk内容清空)。(2) 根据stock_fk表计算总浮亏金额,存入一个新表stock_z中,其字段名为浮亏金额,类型为N(11.2),该表最终只有一条记录(该表属于库STOCK)。单击"退出"菜单项,请使用set sysmenu to default命令使程序终止运行。
综合应用题答案:
“计算”菜单项的命令代码为:
OPEN DATA STOCK
SELECT 股票代码,(买入价-现价)*持有数量 AS 浮亏金额 FROM STOCK_SL WHERE 买入价>现价 INTO ARRAY aaa
DELETE FROM STOCK_FK
INSERT INTO STOCK_FK FROM ARRAY aaa
SELECT SUM(浮亏金额) FROM STOCK_FK INTO ARRAY bbb
CREATE TABLE STOCK_Z(浮亏金额 N(11,2))
INSERT INTO STOCK_Z FROM ARRAY bbb
“退出”菜单项的命令代码为:set sysmenu to default
第 9 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、在考生文件夹下打开数据库CUST_M,为CUST表建立主索引,索引名为客户编号,索引表达式为客户编号。
2、CUST表和ORDER1表中必要的索引已经建立,为两表建立永久性联系。
3、为CUST表增加字段:客户等级C(2),字段值允许为空。
4、为ORDER1表"金额"字段增加有效性规则:金额大于零,否则提示:金额必须大于零。
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹中有一个数据库SDB,其中有数据库表STUDENT2,SC和COURSE2。三个表如下所示:STUDENT2(学号,姓名,年龄,性别,院系编号);SC(学号,课程号,成绩,备注)。COURSE2(课程号,课程名,先修课号,学分)。有一个程序dbtest3.prg,该程序的功能是定义一个视图VS1,检索选课门数是3门以上的每个学生的学号、姓名、平均成绩、最低分、选课门数和院系编号,并按平均成绩降序排序。请修改程序中的错误,并调试该程序,使之正确运行。不得增加或删减程序行。
2、在考生文件夹下有一个数据库CUST_M,数据库中有CUST和ORDER1两个表。请使用菜单设计器制作一个名为MY_MENU的菜单,菜单只有"浏览"一个菜单项。浏览菜单项中有"客户"、"订单"和"退出"三个子菜单: "客户"子菜单使用SELECT * FROM CUST命令对CUST表查询; "订单"子菜单使用SELECT * FROM ORDER1命令对ORDER1表查询;"退出"子菜单使用SET SYSMENU TO DEFAULT命令返回系统菜单。
三、综合应用(1小题,计30分)
在考生文件夹下有学生管理数据库stu_3,数据库中有score_fs表,其表结构是学号C(10)、物理I、高数I、英语I和平均分N(6.2)。成绩如果用-1表示,说明学生没有选学该门课程。其中,该表前四项已有数据。请编写并运行符合下列要求的程序:设计一个名为form_my的表单,表单中有两个命令按钮,按钮的名称分别为cmdyes和cmdno,标题分别为"统计"和"关闭"。程序运行时,单击"统计"按钮应完成下列操作:(1)计算每一个学生的平均分存入平均分字段。注意:分数为-1不记入平均分,例如一个学生的三门成绩存储的是90,-1,70,平均分应是80。(2)根据上面的计算结果,生成一个新的表PJF,该表只包括学号和平均分两项,并且按平均分的降序排序,如果平均分相等,则按学号升序排序。单击"关闭"按钮,程序终止运行。
简单应用题答案:
1 第一处将 ”use ” 改为:”open ”, 第二处将”course2”改为:”sc ”, 第三处将 ”成绩”改为:”平均成绩 desc” 2 注意: 命令必须写完整.
综合应用题答案:
“统计”命令按钮的CLICK事件代码为:
clos all
USE SCORE_FS
GO TOP
DO WHILE NOT EOF()
STORE 0 TO RS,PJF
IF 物理<>-1 THEN
RS=RS+1
PJF=PJF+物理
ENDIF
IF 高数<>-1 THEN
RS=RS+1
PJF=PJF+高数
ENDIF
IF 英语<>-1 THEN
RS=RS+1
PJF=PJF+英语
ENDIF
IF RS<>0 THEN
REPLACE 平均分 WITH PJF/RS
ENDIF
SKIP
ENDDO
SELECT 学号,平均分 FROM SCORE_FS ORDER BY 平均分 DESC,学号 INTO TABLE PJF
“退出”按钮的CLICK的事件代码为:THISFORM.RELEASE
第 10 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、在考生文件夹下建立项目SALES_M。
2、把考生文件夹中的数据库CUST_M加入SALES_M项目中。
3、为CUST_M数据库中CUST表增加字段:联系电话C(12),字段值允许"空"
4、为CUST_M数据库中ORDER1表"送货方式"字段设计默认值为"铁路"。
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹下,有一个数据库SDB,其中有数据库表STUDENT、SC和COURSE。表结构如下:STUDENT(学号,姓名,年龄,性别,院系号);SC(学号,课程号,成绩,备注);COURSE(课程号,课程名,先修课程号,学分)。在表单向导中选取一对多表单向导创建一个表单。要求:从父表STUDENT中选取字段学号和姓名,从子表SC中选取字段课程号和成绩,表单样式选"浮雕式",按钮类型使用"文本按钮",按学号降序排序,表单标题为"学生成绩",最后将表单存放在考生文件夹中,表单文件名是form1。
2、在考生文件夹中有一数据库SDB,其中有数据库表STUDENT,SC和COURSE。建立成绩大于等于60分,按学号升序排序的本地视图GRADELIST,该视图按顺序包含字段学号、姓名、成绩和课程名,然后使用新建立的视图查询视图中的全部信息,并将结果存入表v_grade。
三、综合应用(1小题,计30分)
在考生文件夹下有股票管理数据库stock_4,数据库中有stock_mm表和stock_cc表,stock_mm的表结构是股票代码C(6)、买卖标记L(.T.表示买进,.F.表示卖出)、单价N(7.2)、本次数量N(6)。stock_cc的表结构是股票代码C(6)、持仓数量N(8)。 stock_mm表中一只股票对应多个记录,stock_cc表中一只股票对应一个记录(stock_cc表开始时记录个数为0)。 请编写并运行符合下列要求的程序:设计一个名为menu_lin的菜单,菜单中有两个菜单项"计算"和"退出"。 程序运行时,单击"计算"菜单项应完成下列操作:(1)根据stock_mm统计每只股票的持仓数量,并将结果存放到stock_cc表。计算方法:买卖标记为.T.(表示买进),将本次数量加到相应股票的持仓数量;买卖标记为.F.(表示卖出),将本次数量从相应股票的持仓数量中减去。(注意:stock_cc表中的记录按股票代码从小到大顺序存放)。(2)将stock_cc表中持仓数量最少的股票信息存储到自由表stock_x中(与stock_cc表结构相同)。单击"退出"菜单项,请使用set sysmenu to default命令使程序终止运行。
简单应用题答案:
1 open data sdb
create view GRADELIST AS sele student.学号,姓名,成绩,课程名 from student,sc,course where 成绩>=60 and ;
student.学号=sc.学号 and sc.课程号=course.课程号 order by student.学号
sele * from GRADELIST into table v_grade
综合应用题答案:
“计算”菜单项的过程代码为:
SELECT 股票代码,SUM(本次数量) AS 持仓数量 FROM STOCK_MM WHERE 买卖标记 GROUP BY 股票代码 INTO CURSOR aaa
SELECT 股票代码,SUM(本次数量) AS 持仓数量 FROM STOCK_MM WHERE NOT 买卖标记 GROUP BY 股票代码 INTO CURSOR bbb
SELECT aaa.股票代码,(aaa.持仓数量-bbb.持仓数量) AS 持仓数量 FROM aaa,bbb WHERE aaa.股票代码=bbb.股票代码 ;
ORDER BY aaa.股票代码 INTO ARRAY ccc
DELETE FROM STOCK_CC
INSERT INTO STOCK_CC FROM ARRAY ccc
SELECT * TOP 1 FROM STOCK_CC ORDER BY 持仓数量 INTO TABLE STOCK_X
“退出”菜单项的命令代码为:set sysmenu to default
第 11 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、在考生文件夹下建立项目MARKET。
2、在项目MARKET中建立数据库PROD_M。
3、把考生文件夹中自由表CATEGORY和PRODUCTS加入到PROD_M数据库中。
4、为CATEGORY表建立主索引,索引名primarykey,索引表达式为分类编码;为PRODUCTS表建立普通索引,索引名regularkey,索引表达式为分类编码。
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹中有一个数据库SDB,其中STUDENT表结构如下:STUDENT(学号C(2),姓名C(8),年龄N(2),性别C(2),院系号C(2));现在要对STUDENT表进行修改,指定学号为主索引,索引名和索引表达式均为学号;指定院系号为普通索引,索引名和索引表达式均为院系号;年龄字段的有效性规则在12至30之间(含12和30),默认值是16,性别字段有效性规则是'男'或'女',默认值是'男'。
2、在考生文件夹中有一个数据库SDB,其中有数据库表STUDENT、SC和COURSE。表结构如下:STUDENT(学号,姓名,年龄,性别,院系号);SC(学号,课程号,成绩,备注);COURSE(课程号,课程名,先修课程号,学分)。在考生文件夹下有一个程序test.prg,该程序的功能是检索选修课程门数等于3门或3门以上,每门课程成绩大于或等于70分的每个学生的学号、姓名、性别、平均成绩、最低分和选课门数,并将结果存放到表new_test中。请修改程序中的错误,并调试该程序,使之正确运行。考生不得增加或删减程序行。
三、综合应用(1小题,计30分)
在考生文件夹下有学生管理数据库stu_five:CHENGJI表(学号C(9)、课程号C(3)、成绩I)用于记录学生的考试成绩,其中一个学生可以有多项记录(登记一个学生的多门成绩)。KECHENG表(课程号C(3)、课程名C(10)、最高分I、学号C(9))的内容是所开课程,一门课程只有一个记录(表中有固定的已知数据)。请编写并运行符合下列要求的程序:设计一个名为form_my的表单,表单中有两个命令按钮,按钮的名称分别为cmdyes和cmdno,标题分别为"统计"和"关闭"。程序运行时,单击"统计"按钮应完成下列操作:(1)计算每门课程的最高分,并将结果存入KECHENG表的最高分字段,同时将得此最高分的学生的学号存入该表的学号字段。(2) 根据上面的计算结果,生成一个新的表jiangli,该表按顺序含有来自KECHENG表的课程名和最高分两个字段,并且按最高分降序排序。单击"关闭"按钮,程序终止运行。
简单应用题答案:
1、重要提示,必须写成:性别=‘男’OR 性别=‘女’,否则不得分。
2、第一处将 “while” 改为:”where”, 第二处将”sum”改为:”count ”, 第三处将“to”改为:”into table “
综合应用题答案:
“统计”命令按钮的CLICK事件代码为:
Clos all
SELECT 2
USE KECHENG
INDEX ON 课程号 TO KC
SELECT 1
USE CHENGJI
DO WHILE NOT EOF()
SELECT 2
SEEK A->课程号
IF 最高分<A->成绩
REPLACE 最高分 WITH A->成绩,学号 WITH A->学号
ENDIF
SELECT 1
SKIP
ENDDO
SELECT 课程名,最高分 FROM KECHENG ORDER BY 最高分 INTO TABLE JIANGLI
“关闭”命令按钮的CLICK事件代码为:THISFORM.RELEASE
第 12 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、打开数据库PROD_M及数据库设计器,其中的两个表的必要的索引已经建立,为这两个表建立永久性联系。
2、设置CATEGORY表中"种类名称"字段的默认值为:"饮料"。
3、为PRODUCTS表增加字段:销售价格N(8,2)。
4、如果所有商品的销售价格是在进货价格基础上增加18.98%,计算所有商品的销售价格。
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹中有一个数据库SDB,其中有数据库表STUDENT、SC和COURSE表结构如下:STUDENT(学号,姓名,年龄,性别,院系号);SC(学号,课程号,成绩,备注);COURSE(课程号,课程名,先修课程号,学分)。在考生文件夹下有一个程序DBTEST61.PRG,该程序的功能是检索同时选修了课程号C1和C2的学生的学号。请修改程序中的错误,并调试该程序,使之正确运行。考生不得增加或删减程序行。
2、在考生文件夹中有一个数据库SDB,其中有数据库表STUDENT、SC和COURSE。表结构如下:STUDENT(学号,姓名,年龄,性别,院系号);SC(学号,课程号,成绩,备注);COURSE(课程号,课程名,先修课程号,学分)。在考生文件夹下设计一个表单,该表单为SDB库中STUDENT表窗口式输入界面,表单上还有一个名为cmdclose的按钮,标题名为"关闭",点击该按钮,使用ThisForm.release退出表单。最后将表单存放在考生文件夹中,表单文件名是S_FORM。 提示:在设计表单时,打开SDB数据库,将STUDENT表拖入到表单中就实现了STUDENT表的窗口式输入界面,不需要其他设置或修改。
三、综合应用(1小题,计30分)
在考生文件夹下有股票管理数据库stock_6,数据库中有stock_mm表和stock_cs表,stock_mm的表结构是股票代码C(6)、买卖标记L(.T.表示买进,.F.表示卖出)、单价N(7.2)、本次数量N(6)。tock_cs的表结构是股票代码C(6)、买入次数N(4)、最高价N(7.2)。stock_mm表中一只股票对应多个记录,stock_cs表中一只股票对应一个记录(stock_cs表开始时记录个数为0)。请编写并运行符合下列要求的程序:(1)设计一个名为stock_m菜单,菜单中有两个菜单项"计算"和"退出"。程序运行时,单击"计算"菜单项应完成的操作是计算每支股票的买入次数和(买入时的)最高价存入stock_cs表中,买卖标记.T.(表示买进)(注意:stock_cs表中的记录按股票代码从小到大的物理顺序存放)。 (2)根据stock_cs表计算买入次数最多的股票代码和买入次数存储到的stock_x表中(与stock_cs表对应字段名称和类型一致)。单击"退出"菜单项,程序终止运行。
基本操作题答案:
4、update products set 销售价格=进货价格*(1+18.98/100)
简单应用题答案:
1、第一处将“=”改为“in”, 第二处将“*”改为“学号”, 第三处将“学号”改为“课程号”
综合应用题答案:
“计算”菜单项的过程代码为:
SELECT 股票代码,COUNT(*) AS 买入次数,MAX(单价) AS 最高价 FROM STOCK_MM WHERE 买卖标记 GROUP BY 股票代码 ;
ORDER BY 股票代码 INTO ARRAY aaa
DELETE FROM STOCK_CS
INSERT INTO STOCK_CS FROM ARRAY aaa
SELECT * TOP 1 FROM STOCK_CS ORDER BY 买入次数 DESC INTO TABLE STOCK_X
“退出”菜单项的命令代码为:set sysmenu to default
第 13 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、在考生文件夹下建立项目STSC_M。
2、把数据库STSC加入到STSC_M项目中。
3、从STUDENT表中查询"金融"系学生信息(STUDENT表全部字段),按学号升序存入新表NEW。
4、用视图设计器在数据库中建立视图NEW_VIEW:视图包括STUDENT表全部字段(字段顺序和STUDENT表一样)和全部记录(元组),记录按学号降序排序。
二、简单应用(2小题,每题20分,计40分)
1、首先打开考生文件夹中的数据库STSC,然后使用表单向导制作一个表单,要求选择STUDENT表中所有字段,表单样式为阴影式;按钮类型为图片按钮;排序字段选择学号(升序);表单标题为"学生信息数据输入维护",最后将表单存放在考生文件夹中,表单文件名为T1。
2、在考生文件夹中有一个数据库STSC,其中有数据库表STUDENT存放学生信息,使用菜单设计器制作一个名为SMENU1的菜单,菜单包括"数据维护"和"文件"两个菜单栏。每个菜单栏都包括一个子菜单。菜单结构如下:
数据维护
数据表格式输入
文件
退出
其中:数据表格式输入菜单项对应的过程包括下列4条命令:打开数据库STSC的命令,打开表STUDENT的命令,BROWSE命令,关闭数
据库的命令。退出菜单项对应命令SET SYSMENU TO DEFAULT,使之可以返回到系统菜单。
三、综合应用(1小题,计30分)
在考生文件夹下有学生管理数据库stu_7,该库中有CHENGJI表和XUESHENG表,各表结构如下:(1) CHENGJI表(学号C(9)、课程号C(3)、成绩N(7.2)),该表用于记录学生的考试成绩,一个学生可以有多项记录(登记一个学生的多门成绩)。(2) XUESHENG表(学号C(9)、姓名C(10)、平均分N(7.2)),该表是学生信息,一个学生只有一个记录(表中有固定的已知数据)。请编写并运行符合下列要求的程序:设计一个名为form_stu的表单,表单中有两个命令按钮,按钮的名称分别为CMDYES和CMDNO,标题分别为"统计"和"关闭"。 程序运行时,单击"统计"按钮应完成下列操作:(1) 根据CHENGJI表计算每个学生的平均分,并将结果存入XUESHENG表的平均分字段。
(2) 根据上面的计算结果,生成一个新的自由表pingjun,该表的字段按顺序取自XUESHENG表的学号、姓名和平均分三项,并且按平均分升序排序,如果平均分相等,则按学号升序排序。单击"关闭"按钮,程序终止运行。 重要提示,CMDYES和CMDNO要大写。 简单应用题答案:
“数据表格式输入”菜单项的过程代码为:
Open database STSC
Use student
Browse
Close database
“退出”菜单项的命令代码为:set sysmenu to default
综合应用题答案:
“统计”按钮的CLICK事件代码为:
clos all
USE XUESHENG
DO WHILE NOT EOF()
SELECT AVG(成绩) FROM CHENGJI WHERE 学号=XUESHENG.学号 INTO ARRAY aaa
REPLACE 平均分 WITH aaa(1,1)
SKIP
ENDDO
SELECT 学号,姓名,平均分 FROM XUESHENG ORDER BY 平均分,学号 INTO TABLE PINGJUN
“关闭”按钮的CLICK事件代码为:thisform.release
第 14 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、打开考生文件夹下的STSC数据库,为STUDENT表建立主索引,索引名为学号,索引表达式为学号。
2、为SCORE表建立普通索引,索引名为学号,索引表达式为学号,并根据建立的索引建立STUDENT表和SCORE表之间的联系。
3、为以上联系指定参照完整性,其中插入规则为"限制",更新规则和删除规则为"级联"。
4、逻辑删除STUDENT表中学号为"S5"的记录。
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹中有一个数据库STSC,其中有数据库表STUDENT、SCORE和COURSE。利用SQL语句查询选修了"C++"课程的学生的全部信息,并将结果按学号升序存放在CPLUS.DBF文件中(库的结构同STUDENT,并在其后加入课程号和课程名字段)。
2、在考生文件夹中有一个数据库STSC,其中有数据库表STUDENT,使用报表向导制作一个名为P1的报表,存放在考生文件夹中。要求:选择 STUDENT表中所有字段,报表式样为经营式;报表布局:列数为1,方向为纵向,字段布局为列;排序字段选择学号(升序)报表标题为"学生基本情况一览表"。
三、综合应用(1小题,计30分)
在考生文件夹下有职员管理数据库staff_8,数据库中有YUANGONG表和ZHICHENG表,YUANGONG的表结构是职工编码C(4)、姓名C(10)、职称代码C(1)、工资N(10.2)。ZHICHENG的表结构是职称代码C(1)、职称名称C(8)、增加百分比N(10,2),然后编写并运行符合下列要求的程序:设计一个名为staff_m的菜单,菜单中有两个菜单项"计算"和"退出"。程序运行时,单击"计算"菜单项应完成下列操作:在表yuangong中增加一新的字段:新工资 N(10,2)。现在要给每个人增加工资,请计算YUANGONG表的新工资字段,方法是根据ZHICHENG表中相应职称的增加百分比来计算:新工资=工资*(1+增加百分比/100);单击"退出"菜单项对应命令SET SYSMENU TO DEFAULT,使之可以返回到系统菜单,程序终止运行。
简单应用题答案:
1、Sele student.*,course.课程号,课程名 from student,score,course where 课程名="C++" and student.学号=score.学号 and ; Score.课程号=course.课程号 order by student.学号 into table cplus
综合应用题答案:
“计算”菜单项的过程代码为:
USE ZHICHENG IN 2
USE YUANGONG IN 1
ALTER TABLE YUANGONG ADD 新工资 N(10,2)
SELECT 2
DO WHILE NOT EOF()
SELECT 1
UPDATE YUANGONG SET 新工资=工资*(1+ZHICHENG.增加百分比/100) WHERE YUANGONG.职称代码=ZHICHENG.职称代码
SELECT 2
SKIP
ENDDO
“退出”菜单项的命令代码为:SET SYSMENU TO DEFAULT
第 15 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、在考生文件夹下建立数据库STSC。
2、把自由表STUDENT、COURSE、SCORE加入到数据库中。
3、为SCORE表的"成绩"字段建立有效性规则:成绩大于等于零,否则提示信息:成绩必须大于等于零。
4、为STUDENT表建立主索引,索引名为PRIMARYKEY,索引表达式为学号。
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹中有一个商品数据库COMMDB,其中有数据库表SP存放商品信息,使用菜单设计器制作一个名为SMENU的菜单,菜单包括"数据操作"和"文件"两个菜单栏。每个菜单栏都包括一个子菜单。菜单结构如下:
数据操作
数据输出
文件
退出
其中:数据输出子菜单对应的过程完成下列操作:打开数据库COMMDB,使用SQL的SELECT语句查询数据库表SP中所有信息,然后关闭数据库。退出菜单项对应的过程含有命令SET SYSMENU TO DEFAULT,使之可以返回到系统菜单。
2、在考生文件夹中有一个数据库SDB,其中有数据库表STUDENT2、SC和COURSE2。三个表如下所示:STUDENT2(学号,姓名,年龄,性别,院系编号);SC(学号,课程号,成绩,备注);COURSE2(课程号,课程名,先修课号,学分)。用SQL语句查询"数据库"课程的考试成绩在85分以上(含85分)的学生的全部信息并将结果按学号升序存入自由表NINE.DBF文件中(库的结构同STUDENT2,并在其后加入成绩字段)。
三、综合应用(1小题,计30分)
考生文件夹下有学生管理数据库stu_nine,数据库中有score1表,其库结构是学号C(10)、少数民族L、优秀干部L、三好生L、考试成绩I、总成绩I。其中,前五项已有数据。请编写并运行符合下列要求的程序:设计一个名为form_stu的表单,表单中有两个命令按钮,按钮的名称分别为CMDYES和CMDNO,标题分别为"计算"和"关闭"。程序运行时,单击"计算"按钮应完成下列操作:(1) 计算每一个学生的总成绩。总成绩的计算方法是:考试成绩+加分,加分的规则是:如果该生是少数民族(相应数据字段为.T.)加分5分,优秀干部加分10分,三好生加分20分,加分不累计,取最高的。例如,如果该生既是少数民族又是三好生,加分为20分。如果都不是,总成绩=考试成绩;(2) 根据上面的计算结果,生成一个新的自由表ZCJ,该表只包括学号和总成绩两项,并按总成绩的升序排序,如果总成绩相等,则按学号的升序排序。单击"关闭"按钮,程序终止运行。
简单应用题答案:
1、“数据输出”的过程代码为:
open data commdb
sele * from sp
clos data
“退出”的命令代码为:set sysmenu to default
2、sele student2.*,成绩 from student2,sc,course2 where student2.学号=sc.学号 and sc.课程号=course2.课程号 and ;
课程名="数据库" and 成绩>=85 order by student2.学号 into table nine
综合应用题答案:
“计算”命令按钮的CLICK事件代码为:
USE SCORE1
DO WHILE NOT EOF()
STORE 0 TO JF
DO CASE
CASE 三好生
JF=20
CASE 优秀干部
JF=10
CASE 少数民族
JF=5
OTHERWISE
JF=0
ENDCASE
REPLACE 总成绩 WITH 考试成绩+JF
SKIP
ENDDO
SELECT 学号,总成绩 FROM SCORE1 ORDER BY 总成绩,学号 INTO TABLE ZCJ
“关闭”命令按钮的CLICK事件代码为:thisform.release
第 16 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1、在考生文件夹下建立项目STSC_M。
2、把数据库STSC加入到STSC_M项目中。
3、打开STSC数据库,三个表中必要的索引已经建立,为三个表建立永久性联系。
4、为COURSE表增加字段:开课学期 I。
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹中有数据库STSC,其中有数据库表STUDENT、SCORE和COURSE。三个表如下所示:STUDENT(学号,姓名,性别,院系,出生日期);SCORE(学号,课程编号,成绩);COURSE(课程编号,课程名称,开课院系,开课学期)。 在考生文件夹下有一个程序
dbtest4.prg,该程序的功能是检索选课门数是3门以上的(包括3门)每个学生的学号、姓名、平均成绩、最低分、选课门数和院系,并按平均成绩降序排序,同时将结果存放到表TEST1中,请修改程序中的错误,并调试该程序,使之正确运行。不得增加或删减程序行。
2、在考生文件夹中有数据库STSC,其中有数据库表STUDENT、SCORE和COURSE。三个表如下所示:STUDENT(学号,姓名,性别,院系,出生日期);SCORE(学号,课程编号,成绩);COURSE(课程编号,课程名称,开课院系,开课学期)。使用CREATE QUERY命令建立一个文件名为QUSC.QPR的查询,要求含有学号、姓名、成绩和课程名称,按课程名称升序排序,查询去向是表(表名是QUSC.DBF),然后执行该查询。
三、综合应用(1小题,计30分)
在考生文件夹下有职员管理数据库staff_10,数据库中的YUANGONG表结构是职工编码C(4)、姓名C(10)、夜值班天数I、昼值班天数I、加班费N(10.2)。ZHIBAN表结构是值班时间C(2)、每天加班费N(7.2),ZHIBAN表中只有两条记录,分别记载了白天和夜里的每天加班费标准。 请编写运行符合下列要求的程序:设计一个名为staff_m的菜单,菜单中有两个菜单项"计算"和"退出"。程序运行时,单击"计算"菜单项应完成下列操作:(1)计算YUANGONG表的加班费字段值,计算方法是:加班费=夜值班天数*夜每天加班费+昼值班天数*昼每天加班费 (2)根据上面的结果,将员工的职工编码、姓名、加班费存储到的自由表staff_d中,并按加班费降序排列,如果加班费相等,则按职工编码的升序排列。单击"退出"菜单项,请使用set sysmenu to default命令使程序终止运行。
简单应用题答案:
1、“sum”改为“count”,第二处加“desc”, 第三处改为:into table test1。改好后运行。
综合应用题答案:
“计算”菜单项的过程代码为:
SELECT 每天加班费 FROM ZHIBAN WHERE 值班时间="昼" INTO ARRAY zhou
SELECT 每天加班费 FROM ZHIBAN WHERE 值班时间="夜" INTO ARRAY ye
UPDATE YUANGONG SET 加班费=夜值班天数*ye(1)+昼值班天数*zhou(1)
SELECT 职工编码,姓名,加班费 FROM YUANGONG ORDER BY 加班费 DESC,职工编码 INTO TABLE STAFF_D
“退出”菜单项的命令代码为:SET SYSMENU TO DEFAULT
第 17 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1. 创建一个新的项目"客户管理"。
2. 在新建立的项目"客户管理"中创建数据库"订货管理"。
3. 在"订货管理"数据库中建立表order_list,表结构如下:
客户号 字符型(6)
订单号 字符型(6)
订购日期 日期型
总金额 浮动型(15.2)
4. 为order_list表创建一个主索引,索引名和索引表达式均是"订单号"。
二、简单应用(2小题,每题20分,计40分)
1. 将order_list1表中的全部记录追加到order_list表中,然后用SQL SELECT语句完成查询:按总金额降序列出所有客户的客户号、客户名及其订单号和总金额,并将结果存储到results表中(其中客户号、客户名取自customer表,订单号、总金额取自order_list表)。
2. 打开form1表单,并按如下要求进行修改(注意:最后保存所做的修改):(1) 表单中有5个随机排列的命令按钮,不要移动或改变"基准按钮"位置(否则影响成绩),然后使其他命令按钮与"基准按钮"左部对齐;(2) 在这组命令按钮的右边添加一个表格控件,并将它的RecordSourceType属性设置为"表",然后设置另一个相关属性使在表格控件中显示customer表的记录。
三、综合应用(1小题,计30分)
当order_detail表中的单价修改后,应该根据该表的"单价"和"数量"字段修改order_list表的总金额字段,现在编写程序实现此功能,具体要求和注意事项如下:(1) 根据order_detail表中的记录重新计算order_list表的总金额字段的值;(2) 一条order_list记录可以对应几条order_detail记录;(3) 在编程前应保证在基础操作中正确地建立了order_list表,在简单应用中为该表追加了记录(注意只能追加一次);(4) 最后将order_list表中的记录按总金额降序排序存储到od_new表中(表结构与order_list表完全相同);
(5) 将程序保存为prog1.prg文件。
简单应用题答案:
1、Append from order_list1
Sele customer.客户号,customer.客户名,订单号,总金额 from customer,order_list ;
Where customer.客户号=order_list.客户号 order by 总金额 desc into table results
综合应用题答案: 程序PROG1的内容如下
CLOS ALL
SELECT 订单号,SUM(数量*单价) AS 总金额 FROM ORDER_DETAIL GROUP BY 订单号 INTO CURSOR AAA
SELECT 2
USE ORDER_LIST
DO WHILE NOT EOF()
SELECT 总金额 FROM AAA WHERE AAA.订单号=order_list.订单号 INTO ARRAY BBB
REPLACE 总金额 WITH BBB(1)
SKIP
ENDDO
SELECT * FROM ORDER_LIST ORDER BY 总金额 DESC INTO TABLE OD_NEW
第 18 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1. 打开"订货管理"数据库,并将表order_list添加到该数据库中。
2. 在"订货管理"数据库中建立表order_detail,表结构描述如下:
订单号 字符型(6)
器件号 字符型(6)
器件名 字符型(16)
单价 浮动型(10.2)
数量 整型
3. 为新建立的order_detail表建立一个普通索引,索引名和索引表达式均是"订单号"。
4. 建立表order_list和表order_detail间的永久联系(通过"订单号"字段)。
二、简单应用(2小题,每题20分,计40分)
1. 将 order_detail1表中的全部记录追加到order_detail表中,然后用SQLSELECT语句完成查询:列出所有订购单的订单号、订购日期、器件号、器件名和总金额(按订单号升序,订单号相同再按总金额降序)并将结果存储到results表中(其中订单号、订购日期、总金额取自order_list表,器件号、器件名取自order_detail表)。
2. 打开modi1.prg命令文件,该命令文件包含3条SQL语句,每条SQL语句中都有一个错误,请改正之(注意:在出现错误的地方直接改正,不可以改变SQL语句的结构和SQL短语的顺序)。
三、综合应用(1小题,计30分)
在做本题前首先确认在基础操作中已经正确地建立了order_detail表,在简单应用中已经成功地将记录追加到order_detail表。当order_detail表中的单价修改后,应该根据该表的"单价"和"数量"字段修改order_list表的总金额字段,现在有部分order_list记录的总金额字段值不正确,请编写程序挑出这些记录,并将这些记录存放到一个名为od_mod的表中(与order_list表结构相同,自己建立),然后根据order_detail表的"单价"和"数量"字段修改od_mod表的总金额字段(注意一个od_mod记录可能对应几条order_detail记录),最后od_mod表的结果要求按总金额升序排序,编写的程序最后保存为prog1.prg。
简单应用题答案:
1、clos all
use order_detail
append from order_detail1
sele order_list.订单号,订购日期,器件号,器件名,总金额 from order_list,order_detail;
where order_list.订单号=order_detail.订单号 order by order_list.订单号,总金额 desc into table results
2、第一处将“WITH”改为“=”, 第二处将“ORDER BY””改为“GROUP BY”, 第三处将“FOR” 改为 “WHERE”
综合应用题答案:程序prog1.prg内容如下:
SELECT 订单号,SUM(单价*数量) AS 总金额 FROM ORDER_DETAIL GROUP BY 订单号 INTO CURSOR AAA
SELECT ORDER_LIST.* FROM ORDER_LIST,AAA WHERE ORDER_LIST.订单号=AAA.订单号 AND ORDER_LIST.总金额<>AAA.总金额 ;
INTO TABLE OD_MOD
USE OD_MOD
DO WHILE NOT EOF()
SELECT AAA.总金额 FROM AAA WHERE AAA.订单号=OD_MOD.订单号 INTO ARRAY BBB
REPLACE 总金额 WITH BBB(1)
SKIP
ENDDO
SELECT * FROM OD_MOD ORDER BY 总金额 INTO CURSOR CCC
SELECT * FROM CCC INTO TABLE OD_MOD
第 19 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1. 打开"订货管理"数据库,并将表order_list添加到该数据库中。
2. 在"订货管理"数据库中建立表customer,表结构描述如下:
客户号 字符型(6)
客户名 字符型(16)
地址 字符型(20)
电话 字符型(14)
3. 为新建立的customer表创建一个主索引,索引名和索引表达式均是"客户号"。
4. 将表order_detail从数据库中移出,并永久删除。
二、简单应用(2小题,每题20分,计40分)
1. 将customer1表中的全部记录追加到customer表中,然后用SQL SELECT语句完成查询:列出目前有订购单的客户信息(即有对应的order_list记录的customer表中的记录),同时要求按客户号升序排序,并将结果存储到results表中(表结构与customer表结构相同)。
2. 打开并按如下要求修改form1表单文件(最后保存所做的修改):(1) 在"确定"命令按钮的click事件(过程)下的程序有两处
错误,请改正之;(2) 设置Text2控件的有关属性,使用户在输入口令时显示"*"(星号)。
三、综合应用(1小题,计30分)
使用报表设计器建立一个报表,具体要求如下:(1) 报表的内容(细节带区)是order_list表的订单号、订购日期和总金额;(2) 增加数据分组,分组表达式是 "order_list.客户号",组标头带区的内容是"客户号",组注脚带区的内容是该组订单的"总金额"合计;
(3) 增加标题带区,标题是 "订单分组汇总表(按客户)",要求是3号字、黑体,括号是全角符号;(4) 增加总结带区,该带区的内容是所有订单的总金额合计。最后将建立的报表文件保存为report1.frx文件。 提示:在考试的过程中可以使用"显示→预览"菜单查看报表的效果。
简单应用题答案:
1、clos all
use customer
append from customer1
sele * from customer where 客户号 IN (sele dist 客户号 from order_list) order by 客户号 into table results
2、第一处改为:if thisform.text1.value = thisform.text2.value, 第二处改为:thisform.release
将text2的passwordchar属性设置为 *
第 20 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
在考生文件夹下的"订货管理"数据库中完成如下操作:
1. 将order_detail、order_list和customer表添加到数据库。
2. 为order_list表创建一个主索引,索引名和索引表达式均是"订单号"。
3. 建立表order_list和表order_detail间的永久联系(通过"订单号"字段)。
4. 为以上建立的联系设置参照完整性约束:更新规则为"限制",删除规则为"级联",插入规则为"限制"。
二、简单应用(2小题,每题20分,计40分)
1. 列出客户名为"三益贸易公司"的订购单明细 (order_detail)记录将结果先按"订单号"升序排列,同一订单的再按"单价"降序排列,并将结果存储到results表中(表结构与order_detail表结构相同)。
2. 考生文件夹下有一个form1表单文件,其中三个命令按钮click事件下的语句都是错误的,请按如下要求进行修改(最后保存所做的修改):(1) 单击"刷新标题"命令按钮时,使表单的标题为"简单应用";(2) 单击"订单记录" 命令按钮时,使表格控件中显示order_list表中的记录;(3) 单击"关闭表单" 命令按钮时,关闭表单。注意:每处错误只能在原语句上进行修改,不可以增加语句。
三、综合应用(1小题,计30分)
首先为order_detail表增加一个新字段:新单价(类型与原来的单价字段相同),然后编写满足如下要求的程序:根据order_list 表中的"订购日期"字段值确定order_detail表的"新单价"字段的值,原则是:订购日期为2001年的"新单价"字段的值为原单价的90%,订购日期为2002年的"新单价"字段的值为原单价的110%(注意:在修改操作过程中不要改变order_detail表记录的顺序),将
order_detail表中的记录存储到od_new表中(表结构与order_detail表完全相同);最后将程序保存为prog1.prg,并执行该程序。接着再利用 Visual Foxpro的"快速报表"功能建立一个的简单报表,该报表内容按顺序含有order_detail表的订单号、器件号、器件名、新单价和数量字段的值,将报表文件保存为report1.frx。
简单应用题答案:
1、sele order_detail.* from order_detail,order_list,customer wher customer.客户号=order_list.客户号 and order_list.; 订单号=order_detail.订单号 and 客户名=“三益贸易公司” order by order_detail.订单号,单价 desc into table results
2、“刷新标题”命令按钮的CLICK事件代码为:Thisform.caption=“简单应用”
“订单记录”命令按钮的CLICK事件代码为:Thisform.grid1.recordsource=“order_list.dbf”
“关闭表单”命令按钮的CLICK事件代码为:Thisform.release
综合应用题答案:PROG1.PRG的内容如下:
SELECT 订单号 FROM ORDER_LIST WHERE YEAR(订购日期)=2001 INTO CURSOR AAA
DO WHILE NOT EOF()
UPDATE ORDER_DETAIL SET 新单价=单价*0.9 WHERE 订单号=AAA.订单号
SKIP
ENDDO
SELECT 订单号 FROM ORDER_LIST WHERE YEAR(订购日期)=2002 INTO CURSOR BBB
DO WHILE NOT EOF()
UPDATE ORDER_DETAIL SET 新单价=单价*1.1 WHERE 订单号=BBB.订单号
SKIP
ENDDO
SELECT * FROM ORDER_DETAIL INTO TABLE OD_NEW
第 21 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1. 打开"订货管理"数据库,并将表order_detail添加到该数据库中。
2. 为表order_detail的"单价"字段定义默认值为NULL。
3. 为表order_detail的"单价"字段定义约束规则:单价 > 0 ,违背规则时的提示信息是:"单价必须大于零"。
4. 关闭"订货管理"数据库,然后建立自由表customer,表结构如下:
客户号 字符型(6)
客户名 字符型(16)
地址 字符型(20)
电话 字符型(14)
二、简单应用(2小题,每题20分,计40分)
1. 列出总金额大于所有订购单总金额平均值的订购单(order_list)清单(按客户号升序排列),将结果存到results表中(表结构与order_list表结构相同)。
2. 利用Visual Foxpro的"快速报表"功能建立一个满足如下要求的简单报表:(1) 报表的内容是order_detail表的记录(全部记录,横向);(2) 增加"标题带区",然后在该带区中放置一个标签控件,该标签控件显示报表的标题"器件清单";(3) 将页注脚区默认显示的当前日期改为显示当前的时间;(4) 最后将建立的报表保存为report1.frx。
三、综合应用(1小题,计30分)
首先将order_detail表全部内容复制到od_bak表,然后对od_bak表编写完成如下功能的程序:1. 把"订单号"尾部字母相同并且订货相同("器件号"相同)的订单合并为一张订单,新的"订单号"就取原来的尾部字母,"单价"取最低价,"数量" 取合计;2. 结果先按新的"订单号"升序排序,再按"器件号"升序排序;3. 最终记录的处理结果保存在od_new表中;4. 最后将程序保存为prog1.prg,并执行该程序。
简单应用题答案:
1、Sele * from order_list where 总金额>(sele avg(总金额) from order_list) order by 客户号 into table results
综合应用题答案:程序PROG1.PRG内容如下:
USE OD_BAK
COPY STRUCTURE TO OD_NEW
SELECT RIGHT(订单号,1) AS 新订单号,器件名,器件号,RIGHT(订单号,1)+器件号 AS NEWNUM FROM OD_BAK GROUP BY NEWNUM ; ORDER BY 新订单号,器件号 INTO CURSOR AAA
DO WHILE NOT EOF()
SELECT MIN(单价) AS 最低价,SUM(数量) AS 数量合计 FROM OD_BAK WHERE RIGHT(订单号,1)=AAA.新订单号 AND ;
器件号=AAA.器件号 INTO ARRAY BBB
INSERT INTO OD_NEW VALUES (AAA.新订单号,AAA.器件号,AAA.器件名,BBB(1,1),BBB(1,2))
SKIP
ENDDO
第 22 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1. 创建一个新的项目sdb_p,并在该项目中创建数据库sdb。
2. 将考生文件夹下的自由表student和sc添加到sdb数据库中。
3. 在sdb数据库中建立表course,表结构如下:
字段名 类型 宽度
课程号 字符型 2
课程名 字符型 20
学时 数值型 2
随后向表中输入6条记录,记录内容如下(注意大小写):
课程号 课程名 学时
c1 C++ 60
c2 Visual FoxPro 80
c3 数据结构 50
c4 JAVA 40
c5 Visual BASIC 40
c6 OS 60
4. 为course表创建一个主索引,索引名为cno、索引表达式为"课程号"。
二、简单应用(2小题,每题20分,计40分)
1. 根据sdb数据库中的表用SQL SELECT命令查询学生的学号、姓名、课程名和成绩,结果按 "课程名"升序排序,"课程名"相同时按"成绩"降序排序,并将查询结果存储到sclist表中。
2. 使用表单向导选择student表生成一个名为form1的表单。要求选择student表中所有字段,表单样式为"阴影式";按钮类型为"图片按钮";排序字段选择"学号"(升序);表单标题为"学生基本数据输入维护"。
三、综合应用(1小题,计30分)
1.打开基本操作中建立的数据库sdb,使用SQL的CREATE VIEW命令定义一个名称为SVIEW的视图,该视图的SELECT语句完成查询:选课数是3门以上(不包括3门)的每个学生的学号、姓名、平均成绩、最低分和选课数,并按"平均成绩" 降序排序。最后将定义视图的命令代码存放到命令文件T1.PRG中并执行该文件。接着利用报表向导制作一个报表。要求选择SVIEW视图中所有字段;记录不分组;报表样式为"随意式";排序字段为 "学号"(升序);报表标题为"学生成绩统计一览表";报表文件名为pstudent。
2.设计一个名称为form2的表单,表单上有"浏览"(名称为Command1)和"打印"(Command2)两个命令按钮。鼠标单击"浏览"命令按钮时,先打开数据库sdb,然后执行SELECT语句查询前面定义的SVIEW视图中的记录(两条命令不可以有多余命令),鼠标单击"打印"命令按钮时,调用报表文件pstudent浏览报表的内容(一条命令,不可以有多余命令)。
简单应用题答案:
1、 sele student.学号,姓名,课程名,成绩 from student,sc,course where student.学号=sc.学号 And sc.课程号=course.课程号;
order by 课程名,成绩 desc into table sclist
综合应用题答案:
1、程序T1.PRG的内容如下:
CREATE VIEW SVIEW AS SELECT SC.学号,姓名,AVG(成绩) AS 平均成绩,MIN(成绩) AS 最低分,COUNT(课程号) AS 选课数 ;
FROM SC,STUDENT WHERE SC.学号=STUDENT.学号 GROUP BY STUDENT.学号 HAVING COUNT(课程号)>3 ORDER BY 平均成绩 DESC
2、“浏览”命令按钮的CLICK的事件代码为: open database sdb
select * from sview
“打印”命令按钮的CLICK的事件代码为: report form pstudent.frx preview
第 23 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
在考生文件夹下的数据库salarydb中完成如下操作:
1. 在数据库salarydb中建立表dept,表结构如下:
字段名 类型 宽度
部门号 字符型 2
部门名 字符型 20
随后在表中输入5条记录,记录内容如下:
部门号 部门名
01 制造部
02 销售部
03 项目部
04 采购部
05 人事部
2. 为dept表创建一个主索引(升序),索引名和索引表达式均是"部门号"。
3. 通过"部门号"字段建立salarys表和dept表间的永久联系。
4. 为以上建立的联系设置参照完整性约束:更新规则为"级联";删除规则为"限制";插入规则为"限制"。
二、简单应用(2小题,每题20分,计40分)
1. 使用报表向导建立一个简单报表。要求选择salarys表中所有字段;记录不分组;报表样式为"随意式";列数为"1",字段部局为"列",方向为"纵向";排序字段为"雇员号"(升序);报表标题为 "雇员工资一览表";报表文件名为print1。
2. 在考生文件夹下有一个名称为form1的表单文件,表单中的两个命令按钮的click事件下的语句都有错误,其中一个按钮的名称有错误。请按如下要求进行修改,修改完成后保存所做的修改:(1) 将按钮"刘缆雇员工资"名称修改为"浏览雇员工资";(2) 单击"浏览雇员工资"命令按钮时,使用SELECT命令查询salarys表中所有字段信息供用户浏览;(3) 单击"退出表单"命令按钮时,关闭表单。注意:每处错误只能在原语句上进行修改,不能增加语句行。
三、综合应用(1小题,计30分)
1.请编写名称为change_c的程序并执行;该程序实现下面的功能:将雇员工资表salarys进行备份,备份文件名为baksals.dbf;利用"人事部"向"财务部"提供的雇员工资调整表c_salary1的"工资",对salarys表的"工资"进行调整(请注意:按"雇员号"相同进行调整,并且只是部分雇员的工资进行了调整,其他雇员的工资不动);最后将salarys表中的记录存储到od_new表中(表结构与salarys表完全相同)
2.设计一个文件名为form2的表单,上面有"调整"(名称Command1)和"退出"(名称Command2)两个命令按钮。单击"调整"命令按钮时,调用change_c命令程序实现工资调整; 单击"退出"命令按钮时,关闭表单。注意:在两个命令按钮中均只有一条命令,不可以有多余命令。
简单应用题答案:
2、“浏览雇员工资”命令按钮的CLICK事件代码为:SELECT * FROM salarys
3、“退出表单”命令按钮的CLICK事件代码为:THISFORM .RELEASE
综合应用题答案:
1、程序change_c的内容如下:
SELECT * FROM SALARYS INTO TABLE BAKSALS
USE C_SALARY1
DO WHILE NOT EOF()
UPDATE SALARYS SET 工资=C_SALARY1.工资 WHERE 雇员号=C_SALARY1.雇员号
SKIP
ENDDO
SELECT * FROM SALARYS INTO TABLE OD_NEW
2、“调整”命令按钮的CLICK事件代码为:DO CHANGE_C
“退出”命令按钮的CLICK事件代码为:THISFORM.RELEASE
第 24 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
1. 打开项目文件salary_p,将考生文件夹下的数据库salarydb添加到该项目中。
2. 在salarydb数据库中为dept表创建一个主索引(升序),索引名和索引表达式均是 "部门号";为 salarys表创建一个普通索引(升序),索引名和索引表达式均是"部门号",再创建一个主索引 (升序)、索引名和索引表达式均是"雇员号"。
3. 通过"部门号"字段建立salarys表和dept表间的永久联系。
4. 为以上建立的联系设置参照完整性约束:更新规则为"限制";删除规则为"级联";插入规则为"限制"。
二、简单应用(2小题,每题20分,计40分)
1.创建一个名称为sview的视图,该视图的SELECT语句查询salarydb数据库中salarys表(雇员工资表)的部门号、雇员号、姓名、工资、补贴、奖励、失业保险、医疗统筹和实发工资,其中实发工资由工资、补贴和奖励三项相加,然后再减去失业保险和医疗统筹得出,结果按"部门号"降序排序,最后将定义视图的命令代码存放到命令文件T1.PRG中并执行该程序。
2.设计一个名称为form1的表单,表单以表格方式(与BROWSE窗口方式相似,表格名称为grdSalarys)显示salarydb数据库中salarys表的记录,供用户浏览。在该表单的右下方有一个命令按钮,名称为Command1,标题为"退出浏览",当单击该按钮时退出表单。
三、综合应用(1小题,计30分)
在考生文件夹下,对数据库salarydb完成如下综合应用:设计一个名称为form2的表单,在表单上设计一个"选项组"(又称选项按钮组,名称为Optiongroup1)及两个命令按钮"生成"(名称为Command1)和"退出"(名称为Command2);其中选项按钮组有"雇员工资表"(名称为Option1)、"部门表"(名称为Option2)和"部门工资汇总表"(名称为Option3)三个选项按钮。然后为表单建立数据环境,并向数据环境添加dept表(名称为Cursor1)和salarys表(名称为Cursor2)。 各选项按钮功能如下:(1) 当用户选择"雇员工资表"选项按钮后,再按"生成"命令按钮,查询显示在简单应用中创建的sview视图中的所有信息并把结果存入表gz1.dbf中。
(2) 当用户选择"部门表"选项按钮后,再按"生成"命令按钮,查询显示dept表中每个部门的部门号和部门名称并把结果存入表bm1.dbf中。(3) 当用户选择"部门工资汇总表"选项按钮后,再按"生成"命令按钮,则按部门汇总,将该公司的部门号、部门名、工资、补贴、奖励、失业保险和医疗统筹的支出汇总合计结果存入表hz1.dbf 中。并按部门号的升序排序。请注意:字段名必须与原字段名一致。
(4) 按"退出"按钮,退出表单。注意:以上各项功能必须调试、运行通过。
简单应用题答案:程序T1.PRG的内容如下:
1、CREATE VIEW SVIEW AS SELECT 部门号,雇员号,姓名,工资,补贴,奖励,失业保险,医疗统筹,工资+补贴+奖励-失业保险-医疗统筹; AS 实发工资 FROM SALARYS ORDER BY 部门号 DESC
综合应用题答案:
“生成”命令按钮的CLICK事件代码为:
OPEN DATA SALARYDB
DO CASE
CASE THISFORM.OPTIONGROUP1.VALUE=1
USE SVIEW
BROW
SELECT * FROM SVIEW INTO TABLE GZ1.DBF
CASE THISFORM.OPTIONGROUP1.VALUE=2
USE DEPT
BROW
SELECT * FROM DEPT INTO TABLE BM1.DBF
CASE THISFORM.OPTIONGROUP1.VALUE=3
SELECT DEPT.部门号,dept.部门名,SUM(工资) AS 工资,SUM(补贴) AS 补贴,SUM(奖励) AS 奖励 ,SUM(失业保险) ;
AS 失业保险,SUM(医疗统筹) AS 医疗统筹 FROM DEPT,SALARYS WHERE DEPT.部门号=SALARYS.部门号 ;
GROUP BY DEPT.部门号 ORDER BY DEPT.部门号 INTO TABLE HZ1.DBF
ENDCASE
“退出”命令按钮的CLICK事件代码为:THISFORM.RELEASE
第 25 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
在考生文件夹下的"商品销售"数据库中完成如下操作:
1.将"销售表"中的日期在2000年12月31日前(含2000年12月31日)的记录复制到一个新表"2001.dbf"中。
2.将"销售表"中的日期(日期型字段)在2000年12月31日前(含2000年12月31日)的记录物理删除。
3.打开"商品表",使用BROWSE命令浏览时,使用"文件"菜单中的选项将"商品表"中的记录生成文件名为"商品表.htm"的HTML格式文件。
4.为"商品表"创建一个主索引,索引名和索引表达式均是"商品号";为"销售表"创建一个普通索引(升序),索引名和索引表达式均是"商品号"。
二、简单应用(2小题,每题20分,计40分)
1. 在"商品销售"数据库中,根据"销售表"和"商品表"查询每种商品的商品号、商品名、单价、销售数量和销售金额(商品号、商品名取自商品表,单价和销售数量取自销售表,销售金额=单价*销售数量),结果按销售金额降序排序,并将查询结果存储到see_a表中。
2. 在考生文件夹下有一个名称为form1的表单文件,该表单中的三个命令按钮的Click事件下的语句有错误。请按如下要求进行修改,修改完成后保存所做的修改:(1) 单击"刷新标题"命令按钮时,将表单的标题改为"商品销售数据输入";(2) 单击"商品销售输入"命令按钮时,调用当前文件夹下的名称为sellcomm的表单文件打开数据输入表单;(3) 单击"输出销售报表"命令按钮时,调用当前文件夹下的名称为print1的报表文件对报表进行预览。注意:每处错误只能在原语句上进行修改,不可以增加语句行。
三、综合应用(1小题,计30分)
在考生文件夹下,对"商品销售"数据库完成如下综合应用:1.请编写名称为change_c的命令程序并执行,该程序实现下面的功能:将"商品表"进行备份,备份文件名为"SPBAK.dbf";将"商品表"中"商品号"前两位编号为"10"的商品的"单价"修改为出厂单价提高10%;使用"单价调整表"对商品表的部分商品出厂单价进行修改(按"商品号"相同)。
2.设计一个名称为form2的表单,上面有"调整"(名称Command1)和"退出"(名称Command2)两个命令按钮。单击"调整"命令按钮时,调用change_c命令程序实现商品单价调整;单击"退出"命令按钮时,关闭表单。注意:以上两个命令按钮均只含一条语句,不可以有多余的语句。
基本操作题答案:
1 sele * from 销售表 where 日期<={^2000-12-31} into table 2001
2 dele from 销售表 where 日期<={^2000-12-31}
use 销售表
pack
简单应用题答案:
1 Sele 商品表.商品号,商品名,销售表.单价,销售数量,销售表.单价*销售数量 AS 销售金额 from 商品表,销售表 ;
WHERE 商品表.商品号=销售表.商品号 ORDER BY 销售金额 DESC INTO TABLE see_a
2、“刷新标题”命令按钮的CLICK事件代码为:ThisForm.CAPTION= "商品销售数据输入"
“商品销售输入”命令按钮的CLICK事件代码为:DO FORM sellcomm
“商品销售报表”命令按钮的CLICK事件代码为:REPORT FORM print1 PREVIEW
综合应用题答案:
1、程序change_c.PRG的内容如下:
SELECT * FROM 商品表 INTO TABLE SPBAK
UPDATE 商品表 SET 单价=出厂单价*1.1 WHERE LEFT(商品号,2)="10"
USE 单价调整表
DO WHILE NOT EOF()
UPDATE 商品表 SET 出厂单价=单价调整表.出厂单价 WHERE 商品号=单价调整表.商品号
SKIP
ENDDO
2、“调整”命令按钮的CLICK事件代码为:DO CHANGE_C
“退出” 命令按钮的CLICK事件代码为:THISFORM.RELEASE
第 26 套
一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)
在考生文件夹下的"雇员管理"数据库中完成如下操作:
1.为"雇员"表增加一个字段名为EMAIL、类型为"字符"、宽度为20的字段。
2.设置"雇员"表中"性别"字段的有效性规则,性别取"男"或"女",默认值为"女"。
3.在"雇员"表中,将所有记录的EMAIL字段值使用"部门号"的字段值加上"雇员号"的字段值再加上"@http://"进行替换。
4.通过"部门号"字段建立"雇员"表和"部门"表间的永久联系。
二、简单应用(2小题,每题20分,计40分)
1.请修改并执行名称为form1的表单,要求如下:(1) 为表单建立数据环境,并将"雇员"表添加到数据环境中;2) 将表单标题修改为"XXX公司雇员信息维护";(3) 修改命令按钮"刷新日期"的Click事件下的语句,使用SQL的更新命令,将"雇员"表中"日期"字段值更换成当前计算机的日期值。注意:只能在原语句上进行修改,不可以增加语句行。
2.建立一个名称为menu1的菜单,菜单栏有"文件"和"编辑浏览"两个菜单。"文件"菜单下有"打开"、"关闭退出"两个子菜单;"浏览"菜单下有"雇员编辑"、"部门编辑"和"雇员浏览"三个子菜单。
三、综合应用(1小题,计30分)
在考生文件夹下,对"雇员管理"数据库完成如下综合应用:1.建立一个名称为VIEW1的视图,查询每个雇员的部门号、部门名、雇员号、姓名、性别、年龄和EMAIL。 2.设计一个名称为form2的表单,表单上设计一个页框,页框有"部门"和"雇员"两个选项卡,在表单的右下角有一个"退出"命令按钮。要求如下:(1) 表单的标题名称为"商品销售数据输入";(2) 单击选项卡"雇员"时,在选项卡"雇员"中使用"表格"方式显示VIEW1视图中的记录(表格名称grdView1);(3) 单击选项卡"部门"时,在选项卡"部门"中使用"表格"方式显示"部门"表中的记录(表格名称为"grd部门");(4) 单击"退出"命令按钮时,关闭表单。
基本操作题答案:
2、重要提示,必须写成:性别=‘男’OR 性别=‘女’,否则不得分。
3、Replace all email with 部门号+雇员号+“@http://”
简单应用题答案:
3、“刷新日期”命令按钮的CLICK事件代码为:update 雇员 SET 日期=date()
综合应用题答案:
1、create view view1 as sele 雇员.部门号,部门名,雇员号,姓名,性别,年龄,EMAIL FROM 雇员,部门 ;
Where 雇员.部门号=部门.部门号
第 27 套
一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)
1. 新建一个名为"供应"的项目文件。
2. 将数据库"供应零件"加入到新建的"供应"项目文件中。
3. 通过"零件号"字段为"零件"表和"供应"表建立永久联系("零件"是父表,"供应"是子表)。
4. 为"供应"表的数量字段设置有效性规则: 数量必须大于0并且小于9999;错误提示信息是"数量超范围"(注意:公式必须为 数量>0 .and. 数量<9999)。
二、简单应用(2小题,每题20分,计40分)
1. 用SQL语句完成下列操作:列出所有与"红"颜色零件相关的信息(供应商号,工程号和数量),并将检索结果按数量降序排序存放于表sup_temp中。
2. 建立一个名为m_quick的快捷菜单,菜单中有两个菜单项"查询"和"修改"。然后在表单myform中的RightClick事件中调用快捷菜单m_quick。
三、综合应用(1小题,计30分)
设计名为mysupply的表单(表单的控件名和文件名均为mysupply)。表单的标题为"零件供应情况"。表单中有一个表格控件和两个命令按钮"查询"(名称为Command1)和"退出"(名称为Command2)。运行表单时,单击"查询"命令按钮后,表格控件(名称grid1)中显示了工程号"J4"所使用的零件的零件名、颜色、和重量。单击"退出"按钮关闭表单。
简单应用题答案:
1、 sele 供应商号,工程号,数量 FROM 供应 WHERE 零件号 IN (SELE 零件号 FROM 零件 WHERE 颜色=”红”) ;
Order by 数量 DESC into table sup_temp
综合应用题答案:
先将表单中的grid1表格的recordsourcetype属性设置成“表”,然后写 “查询”命令按钮的CLICK事件代码为:
select 零件名,颜色,重量 from 零件 where 零件号 in (select 零件号 from 供应 where 工程号="J4") into table ls thisform.grid1.recordsource="ls"
“退出”命令按钮的CLICK事件代码为:thisform.release
第 28 套
一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)
1. 新建一个名为"图书管理"的项目。
2. 在项目中建立一个名为"图书"的数据库。
3. 将考生文件夹下的所有自由表添加到"图书"数据库中。
4. 在项目中建立查询book_qu:查询价格大于等于10的图书(book表)的所有信息,查询结果按价格降序排序。
二、简单应用(2小题,每题20分,计40分)
1. 用SQL语句完成下列操作:检索"田亮"所借图书的书名、作者和价格,结果按价格降序存入booktemp表中。
2. 在考生文件夹下有一个名为menu_lin的下拉式菜单,请设计顶层表单frmmenu,将菜单menu_lin加入到该表单中,使得运行表单时菜单显示在本表单中,并在表单退出时释放菜单。
三、综合应用(1小题,计30分)
设计名为formbook的表单(控件名为form1,文件名为formbook)。表单的标题设为"图书情况统计"。表单中有一个组合框(名称为Combo1)、一个文本框(名称为Text1)和两个命令按钮"统计"(名称为Command1)和"退出"(名称为Command2)。 运行表单时,组合框中有三个条目"清华"、"北航"、"科学"(只有三个出版社名称,不能输入新的)可供选择,在组合框中选择出版社名称后,如果单击"统计"命令按钮,则文本框显示出"图书"表中该出版社图书的总数。 单击"退出"按钮关闭表单。
简单应用题答案:
1、sele 书名,作者,价格 FROM book,borrows,loans where book.图书登记号=loans.图书登记号 and ;
上一篇:考研英语小作文范例之二(祝贺信)
下一篇:《西方社会思想史》考试范围