1、二级 VISUAL+FOXPRO机试-135 及答案解析(总分:100.00,做题时间:90 分钟)一、一 基本操作题(总题数:1,分数:30.00)1.对中的“学生”表使用 SQL语句完成下列四道题目,并将 SQL语句保存在 my.txt 中。(1)用 SELECT语句查询所有住在 3楼学生的全部信息。(2)用 INSERT语句为“学生”表插入一条记录(138,刘云,男,23,5)。(3)用 DELETE语句将“学生”表中学号为“200”的学生的记录删除。(4)用 UPDATE语句将所有人的年龄加一岁。(分数:30.00)_二、二 简单应用题(总题数:1,分数:40.00)2.(1)在考生文
2、件夹中有一个 student 学生表,表结构如下:学生(学号 C(3),姓名 C(9),年龄 N(3),性别 C(3),院系号 C(3),现在要对 STUDENT 表进行修改,指定“学号”为主索引,索引名和索引表达式均为“学号”;指定“系号”为“普通索引”,索引名和索引表达式均为“系号”;年龄字段的有效性规则在 15至 30之间(含 15和 30),默认值是 18。(2)列出客户名为“飞腾贸易公司”的订购单明细记录,将结果先按“订单编号”升序排列,同一订单的再按“价格”降序排列,并将结果存储到 res 表中(表结构与 order_detail表结构相同)。(分数:40.00)_三、三 综合应用
3、题(总题数:1,分数:30.00)3.“成绩管理”数据库中有 3个数据库表“学生信息”、“成绩信息”和“课程信息”。建立文件名为 my,标题为“成绩查询”的表单,表单包含 3个命令按钮,标题分别为“查询最高分”、“查询最低分”和“关闭”。单击“查询最高分”按钮时,调用 SQL语句查询出每门课的最高分,查询结果中包含“姓名”,“课程名”和“最高分”三个字段,结果在表格中显示。单击“查询最低分”按钮时,调用 SQL语句查询出每门课的最低分,查询结果中包含“姓名”,“课程名”和“最低分”三个字段,结果在表格中显示。单击“关闭”按钮时关闭表单。(分数:30.00)_二级 VISUAL+FOXPRO机试
4、-135 答案解析(总分:100.00,做题时间:90 分钟)一、一 基本操作题(总题数:1,分数:30.00)1.对中的“学生”表使用 SQL语句完成下列四道题目,并将 SQL语句保存在 my.txt 中。(1)用 SELECT语句查询所有住在 3楼学生的全部信息。(2)用 INSERT语句为“学生”表插入一条记录(138,刘云,男,23,5)。(3)用 DELETE语句将“学生”表中学号为“200”的学生的记录删除。(4)用 UPDATE语句将所有人的年龄加一岁。(分数:30.00)_正确答案:(在命令窗口中输入命令:MODIFY FILE my,打开文本编辑器,在编辑器中,依次输入以下
5、4条语句:*文件 my.txt中的程序段*SELECT*FROM 学生 WHERE 楼层数=3 &(1)查询语句INSERT INTO 学生 VALUES(138“刘云”,“男”,23,5) &(2)&插入语句DELETE FROM 学生 WHERE 学号=200 &(3)删除语句UPDATE 学生 SET 年龄=年龄=+1 &(4)更新语句*保存文件,在命令窗口执行命令:DO my.txt,运行各条语句。)解析:解析 本大题主要考查了 SQL的操作功能,包括数据的插入(INSERT)、更新(UPDATE)、查询 (SELECT)和删除(DELETE)。答案考生文件夹二、二 简单应用题(总题数
6、:1,分数:40.00)2.(1)在考生文件夹中有一个 student 学生表,表结构如下:学生(学号 C(3),姓名 C(9),年龄 N(3),性别 C(3),院系号 C(3),现在要对 STUDENT 表进行修改,指定“学号”为主索引,索引名和索引表达式均为“学号”;指定“系号”为“普通索引”,索引名和索引表达式均为“系号”;年龄字段的有效性规则在 15至 30之间(含 15和 30),默认值是 18。(2)列出客户名为“飞腾贸易公司”的订购单明细记录,将结果先按“订单编号”升序排列,同一订单的再按“价格”降序排列,并将结果存储到 res 表中(表结构与 order_detail表结构相同
7、)。(分数:40.00)_正确答案:(1)在命令窗口输入命令:USE studentMODIFY STRUCTURE打开 student 的数据表设计器界面,在“索引”选项卡的“索引名”和“索引表达式”中输入“学号”,在“类型”的下拉框中,选择“主索引”。同样的方法,在“索引”选项卡第二行的“索引名”和“索引表达式”中输入“系号”,在“类型”的下拉框中,选择“普通索引”。在“字段”选项卡中,首先选中“年龄”字段,然后在规则文本框中输入“年龄=15.AND年龄=30”,在默认值文本框中输入“18”。如图 3-99所示。图 3-99单击“确定”按钮,关闭表设计器,保存数据表修改。(2)在命令窗口中
8、输入命令:MODIFY COMMAND query1,在程序文件编辑器窗口输入如下程序段:*文件 query1.prg 中的程序段*SELECT order_detail.订单编号,器件号,器件名,价格,数量;FROM customer,order_ detail,order_ list;WHERE customer.客户号=order_ list.客户号:AND order_ list订单编号=order_ detail订单编号;AND customer.客户名=“飞腾贸易公司”;ORDER BY order_ detail.订单编号 ASC,价格 DESC;INTO TABLE res*在
9、命令窗口输入命令:DO query1,运行程序,查询结果自动保存到 res表中,通过 BROWSE 命令可查看结果,如图 3-100所示。)解析:解析 本大题 1小题考查的是索引的建立,字段有效性的建立。建立表索引以及有效性的设置可以在数据表设计器中完成;2 小题考查了 SQL 联接查询,设计过程中主要注意两个表之间进行关联的字段。三、三 综合应用题(总题数:1,分数:30.00)3.“成绩管理”数据库中有 3个数据库表“学生信息”、“成绩信息”和“课程信息”。建立文件名为 my,标题为“成绩查询”的表单,表单包含 3个命令按钮,标题分别为“查询最高分”、“查询最低分”和“关闭”。单击“查询最
10、高分”按钮时,调用 SQL语句查询出每门课的最高分,查询结果中包含“姓名”,“课程名”和“最高分”三个字段,结果在表格中显示。单击“查询最低分”按钮时,调用 SQL语句查询出每门课的最低分,查询结果中包含“姓名”,“课程名”和“最低分”三个字段,结果在表格中显示。单击“关闭”按钮时关闭表单。(分数:30.00)_正确答案:(在命令窗口中输入命令:CREATE FORM myf,打开表单设计器,通过“表单控件”工具栏向表单添加 3个命令按钮。选中表单,在属性面板中修改 Caption的属性值为“成绩查询”,在属性面板顶端的下拉框中选择 Command1,修改该命令按钮控件的 Caption 属性
11、值为“查询最高分”,选择 Command2,修改该命令按钮控件的 Caption 属性值为“查询最低分”,选择 Command3,修改该命令按钮控件的 Caption 属性值为“关闭”。分别编写各个命令按钮的 Click 事件。*命令按钮 Command1(查询最高分)的 Click 事件代码。*SELECT 姓名,课程名称,MAX(成绩)AS 最高分;FROM 课程信息,成绩信息,学生信息;WHERE 课程信息.课程号=成绩信息.课程号;AND 学生信息.学号=成绩信息.学号;GROUP BY 课程信息.课程号*命令按钮 Command2(查询最低分)的 Click 事件代码*SELECT 姓名,课程名称,MIN(成绩)AS 最低分;FROM 课程信息,成绩信息,学生信息;WHERE 课程信息.课程号=成绩信息.课程号;AND 学生信息.学号=成绩信息.学号;GROUP BY 课程信息.课程号*最后双击“关闭”按钮,在 Click 事件中编写程序命令:Thisform. Release。保存并运行表单。结果如图 3-101所示。)解析:解析 本大题考查了表单设计,在设计控件属性时,不要将控件的标题和名称属性弄混淆了;程序部分考查了 MAX,MIN 函数的应用,考生应该熟悉各种函数的应用以及田 GROUP BY 与 ORDER BY 的区别。