1、国家二级 VF 机试-试卷 163 及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.在考生文件夹下的数据库 salary_db 中完成如下操作: (1)在数据库 salary_db 中建立表 dept,表结构如下: 字段名 类型 宽度 部门号 字符型 2 部门名 字符型 20 随后在表中输入 5 条记录,记录内容如下: 部门号 部门名 01 制造部 02 销售部 03 项目部 04 采购部 05 人事部 (2)为 dept 表创建一个主索引(升序),索引名和索引表达式均是“部门号”。 (3)通过“部门号”
2、字段建立 salarys 表和 dept表间的永久联系。 (4)为以上建立的联系设置参照完整性约束:更新规则为“级联”;删除规则为“限制”;插入规则为“限制”。(分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.(1)在“team”数据库中有数据库表“积分”,统计“胜场”=“负场”的所有信息。并将结果放在表“result2”中,将所使用到的 SQL 语句保存到“cx1prg”中。 (2)在考生文件夹下有一个数据库“team”,其中有数据库表“积分”。使用报表向导制作一个名为“rpt1”的报表。要求:选择表中的全部字段;报表样式为“随意式”;
3、报表布局:列数为“2”,方向为“横向”;排序字段为“积分”(降序);积分相同时按胜场次排序(降序);报表标题设置为“积分榜”。(分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.“成绩管理”数据库中含有 3 个数据库表“student”“score”和“course”。为了对“成绩管理”数据库数诺进行查询,设计一个表单“bd1”,表单标题为“成绩查询”;表单有“查询”和“关闭”两个按钮。 表单运行时,单击“查询”按钮,查询每门课程的最高分,查询结果中含“课程名”和“最高分”字段,结果按课程名升序保存在“result”中。 单击“关闭”按钮,
4、关闭表单。(分数:2.00)_国家二级 VF 机试-试卷 163 答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_解析:2.在考生文件夹下的数据库 salary_db 中完成如下操作: (1)在数据库 salary_db 中建立表 dept,表结构如下: 字段名 类型 宽度 部门号 字符型 2 部门名 字符型 20 随后在表中输入 5 条记录,记录内容如下: 部门号 部门名 01 制造部 02 销售部 03 项目部 04 采购部 05 人事部 (2)为 dept 表创建一个主索引(升序),索引名和索引表达式均是
5、“部门号”。 (3)通过“部门号”字段建立 salarys 表和 dept表间的永久联系。 (4)为以上建立的联系设置参照完整性约束:更新规则为“级联”;删除规则为“限制”;插入规则为“限制”。(分数:2.00)_正确答案:(正确答案:(1)命令窗口执行命令: MODIFY DATABASE salary_db ,打开 salary_db 数据库设计器。 在数据库设计器中右击鼠标,选择【新建表】快捷菜单命令,在弹出的“新建表”对话框中单击“新建表”图标按钮,然后在弹出的“创建”对话框的“输入表名”框中输入“dept”,单击“保存”按钮打开表设计器。 根据题意,在表设计器中逐行输入每个字段的字段
6、名,并设置字段类型和宽度,然后单击“确定”按钮,此时系统会弹出一个对话框询问“现在输入数据记录吗?”,单击“是”按钮,在弹出的“dept”表编辑窗口中根据题目要求逐行输入每条记录的值。 (2)右击数据库设计器中的dept 表,选择【修改】快捷菜单命令,打开 dept 表设计器,在“字段”选项卡中选中“部门号”,在“索引”列中选择“升序”,然后在“索引”选项卡中修改“索引类型”为主索引,建立“部门号”字段的主索引,单击“确定”按钮保存表结构修改。 (3)在数据库设计器中,拖动 dept 表“索引”下方的主索引“部门号”到 salarys 表“索引”下方的普通索引“部门号”上,为两个表建立联系。
7、(4)选中dept 和 salarys 两个表之间的连线(被选中的线会变粗),首先执行【数据库】【清理数据库】菜单命令,清空数据库表中带有删除标记的记录,然后执行【数据库】【编辑参照完整性】菜单命令。 在打开的“参照完整性”对话框的表格中,选择“更新”下的单元格内容为“级联”;“删除”下的单元格内容为“限制”;“插入”下的单元格内容为“限制”。单击“确定”按钮保存参照完整性的修改。)解析:解析:本大题考查了数据库表的建立和索引的建立;表间永久联系的建立和参照完整性的设置。 在表设计器的“字段”选项卡中,可以通过选择“排序”下拉框中的“升序”或“降序”为指定的字段建立一个索引名与索引表达式相同的
8、普通索引,如果要改变索引名或索引类型,则需要在“索引”选项卡中进行修改。二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.(1)在“team”数据库中有数据库表“积分”,统计“胜场”=“负场”的所有信息。并将结果放在表“result2”中,将所使用到的 SQL 语句保存到“cx1prg”中。 (2)在考生文件夹下有一个数据库“team”,其中有数据库表“积分”。使用报表向导制作一个名为“rpt1”的报表。要求:选择表中的全部字段;报表样式为“随意式”;报表布局:列数为“2”,方向为“横向”;排序字段为“积分”(降序);积分相同时按胜场次排序(降序);报
9、表标题设置为“积分榜”。(分数:2.00)_正确答案:(正确答案:(1)在命令窗口中输入命令:MODI COMM cx1(回车执行)打开程序文件编辑窗口,在程序文件编辑窗口中输入代码: SELECT*INTO TABLE result2 FROM 积分 WHERE 胜场=负场。 关闭程序文件编辑窗口并保存程序文件。 在命令窗口中输入命令:DO cx1(回车执行),执行程序文件。 (2)选择【文件】【新建】命令,选择“报表”,单击“向导”按钮打开“向导选取”窗口,选择“报表向导”,单击“确定”按钮进入“报表向导”对话框。 在“报表向导”对话框中选择“team”数据库下的“积分”数据表,并把全部“
10、可用字段”添加到“选定字段”列表框中。 连续单击“下一步”进入“选择报表样式”的界面,在“样式”列表框中选掸“随意式”。 单击“下一步”进入“定义报表布局”,设置“列数”为“2”,“方向”为“横向”。 单击“下一步”进入“排序记录”的设计界面,将“可用字段或索引标识”列表框中的“积分”字段添加到右边的“选定字段”列表框中,并选择“降序”单选项。 单击“下一步”,进入最后的“完成”设计界面,在“报表标题”文本框中输入“积分榜”为报表添加标题,单击“完成”命令按钮,在系统弹出的“另存为”对话框中,将报表以“rpt1”文件名保存在考生文件夹下,退出报表设计向导。)解析:三、综合应用题(总题数:2,分
11、数:4.00)5.综合应用题()(分数:2.00)_解析:6.“成绩管理”数据库中含有 3 个数据库表“student”“score”和“course”。为了对“成绩管理”数据库数诺进行查询,设计一个表单“bd1”,表单标题为“成绩查询”;表单有“查询”和“关闭”两个按钮。 表单运行时,单击“查询”按钮,查询每门课程的最高分,查询结果中含“课程名”和“最高分”字段,结果按课程名升序保存在“result”中。 单击“关闭”按钮,关闭表单。(分数:2.00)_正确答案:(正确答案:选择【文件】【新建】命令,选择“表单”,单击“新建文件”按钮打开表单设计器,在表单属性窗口上修改“Caption”属性
12、值为“成绩查询”,单击表单控件工具栏上的“命令按钮”控件图标,为表单添加两个命令按钮 Command1 和 Command2。 在按钮属性窗口中将命令按钮Command1 的 Name 属性值修改为“cmdQry”,将 Caption 属性值修改为“查询”,将命令按钮 Command2的 Name 属性值修改为“cmdClose”,将 Caption 属性值修改为“关闭”。 双击“关闭”命令按钮。在Click 事件中输入代码:ThisFormRelease,用来关闭表单,双击“查询”命令按钮,在 Click 事件中输入以下代码: SELECT 课程名称,MAX(成绩)AS 最高分 INTO TABLE resuh FROM score,course WHERE score课程编号=course 课程编号 GROUP BY 课程名称 ORDER BY 课程名称 选择【表单】【执行表单】命令,系统首先要求保存该表单文件,在弹出的“另存为”对话框中输入表单文件名“bd1”保存在考生文件夹下,然后运行表单,单击“查询”按钮查询结果将会自动保存到新表“result”中。)解析: