1、二级 VISUAL+FOXPRO机试-82 及答案解析(总分:100.00,做题时间:90 分钟)一、一 基本操作题(总题数:1,分数:30.00)1.请在考生文件夹下建立一个数据库 KS4。2将考生文件夹下的自由表 STUDCOUR、SCOR 加入到数据库 KS4中。3为 STUD表建立主索引,索引名和索引表达式均为学号为 COUR表建立主索引,索引名和索引表达式均为课程编号为 SCOR表建立两个普通索引,其中一个索引名和索引表达式均为学号;另一个索引名和索引表达式均为课程编号4在以上建立的各个索引的基础上为三个表建立联系。(分数:30.00)_二、二 简单应用题(总题数:1,分数:40.0
2、0)2.在考生文件夹中有一个数据库 STSC,其中有数据库表 STUDENT、SCORE 和 COURSE利用 SQL语句查询选修了“网络工程”课程的学生的全部信息,并将结果按学号降序存放在 NETPDBF 文件中(库的结构同 STUDENT,并在其后加入课程号和课程名字段)。2在考生文件夹中有一个数据库 STSC,其中有数据库表 STUDENT,使用一对多报表向导制作一个名为 cj2的报表,存放在考生文件夹中。要求:选择父表 STUDENT表中学号和姓名字段,从子表 SCORE中选择课程号和成绩,排序字段选择学号(升序),报表式样为简报式,方向为纵向。报表标题为“学生成绩表”。(分数:40.
3、00)_三、三 综合应用题(总题数:1,分数:30.00)3.在考生文件夹下有王资数据库 WAGE3,包括数据表文件:ZG(仓库号 C(4),职工号 C(4),工资 N(4)设计一个名为 TJ3的菜单,菜单中有两个菜单项“统计”和“退出”。程序运行时,单击“统计”菜单项应完成下列操作:检索出工资低于本仓库职工平均工资的职工信息,并将这些职工信息按照仓库号升序。在仓库号相同的情况下再按职工号升序存放到 EMPl文件中,该数据表文件和 ZC数据表文件具有相同的结构。单击“退出”菜单项,程序终止运行。(注:相关数据表文件存在于考生文件英下)(分数:30.00)_二级 VISUAL+FOXPRO机试-
4、82 答案解析(总分:100.00,做题时间:90 分钟)一、一 基本操作题(总题数:1,分数:30.00)1.请在考生文件夹下建立一个数据库 KS4。2将考生文件夹下的自由表 STUDCOUR、SCOR 加入到数据库 KS4中。3为 STUD表建立主索引,索引名和索引表达式均为学号为 COUR表建立主索引,索引名和索引表达式均为课程编号为 SCOR表建立两个普通索引,其中一个索引名和索引表达式均为学号;另一个索引名和索引表达式均为课程编号4在以上建立的各个索引的基础上为三个表建立联系。(分数:30.00)_正确答案:(本题的主要考核点是 SQL语句的查询。SELECT Student*,Sc
5、ore课程号,Course课程名;FROM stsc !student INNER JOIN stsc!score;INNER JO1N stsc!course;ON Score课程号:Course课程号;ON Student学号:Score学号;WHERE AT(“网络工程“,Course课程名)0;ORDER BY Student学号 desc;INTO TABLE netpdbf)解析:二、二 简单应用题(总题数:1,分数:40.00)2.在考生文件夹中有一个数据库 STSC,其中有数据库表 STUDENT、SCORE 和 COURSE利用 SQL语句查询选修了“网络工程”课程的学生的全
6、部信息,并将结果按学号降序存放在 NETPDBF 文件中(库的结构同 STUDENT,并在其后加入课程号和课程名字段)。2在考生文件夹中有一个数据库 STSC,其中有数据库表 STUDENT,使用一对多报表向导制作一个名为 cj2的报表,存放在考生文件夹中。要求:选择父表 STUDENT表中学号和姓名字段,从子表 SCORE中选择课程号和成绩,排序字段选择学号(升序),报表式样为简报式,方向为纵向。报表标题为“学生成绩表”。(分数:40.00)_正确答案:(本题的主要考核点是使用报表向导制作报表。启动报表向导可在“文件”菜单中选择“新建”或者单击工具栏上的“新建”按钮,打开“新建”对话框,文件
7、类型选择报表,单击向导按钮。或者在“工具”菜单中选择“向导”子菜单,选择报表”,或直接单击工具栏上的“报表向导”图标按钮。然后按照向导提示操作即可。)解析:三、三 综合应用题(总题数:1,分数:30.00)3.在考生文件夹下有王资数据库 WAGE3,包括数据表文件:ZG(仓库号 C(4),职工号 C(4),工资 N(4)设计一个名为 TJ3的菜单,菜单中有两个菜单项“统计”和“退出”。程序运行时,单击“统计”菜单项应完成下列操作:检索出工资低于本仓库职工平均工资的职工信息,并将这些职工信息按照仓库号升序。在仓库号相同的情况下再按职工号升序存放到 EMPl文件中,该数据表文件和 ZC数据表文件具
8、有相同的结构。单击“退出”菜单项,程序终止运行。(注:相关数据表文件存在于考生文件英下)(分数:30.00)_正确答案:(菜单的建立、结构化查询语言(SQL)中的联接查询、查询的排序,临时表的概念,查询结果的去向等知识。)解析:解题思路利用菜单设计器定义两个菜单项,在菜单名称为“统计”,的菜单项的结果列中选择“过程”,并通过单击“编辑”按钮打开一个窗中来添加“统计”菜单项要执行的命令。在菜单名称为“退出”的菜单项的结果列中选择“命令”,并在后面的“选项”列中输入以下退出菜单的命令:SET SYSMENU TO DEFAULT“统计”菜单项要执行的程序:首先是打开数据库文件 OPNE DATAB
9、ASE WAGE3.DBC我们应该得到每一个仓库的职工平均工资,并将结果放在一个临时的表 CurTable中。利用以下语句可以实现:SELECT 仓库号,AVG(工资)AS Avg GZ FROM ZG GROUP BY 仓库号 INTO CURSOR CurTable。这样就生成了一个表名为 CurTable的临时表。表中有两个字段:仓库号,Avg GZ,内容为每一个仓库的仓库号和所对应的职工的平均工资。有了临时表 Cur Table后我们可以将其与 ZG进行联接查询,我们这里联接查询的目的不是为了得到临时表中的内容做为结果的一部分,而是要用其中的字段 Avg GZ做为查询的条件。我们便可以
10、得到“工资小于或低于本仓库职工平均工资的职工信息”的查询:SELECT ZG*FROMZG,CurTable WHERE ZG仓库号=CurTable仓库号 AND ZG工资Cur TableAvg GZ利用 ORDER BY子句来实现查询结果的排序:ORDER BY仓库号,职工号;利用 INTOTABLE子句可以实现查询结果的去向:INTO TABLE EMP1。完整的查询语句如下:SELECTZG* FROM ZG, CurTable WHERE ZG仓库号=CurTable仓库号 AND ZG工资Cur TableAvg GZ ORDER BY 仓库号,职工号 INTO TABLE EMP1。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1