1、国家二级 VF机试(操作题)-试卷 287及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.(1)打开“订货管理”数据库,并将表 order list添加到该数据库中。(2)在“订货管理”数据库中建立表 order detail,表结构描述如下: 订单号 字符型(6) 器件号 字符型(6) 器件名 字符型(16) 单价 浮动型(10,2) 数量 整型(3)为新建立的 order detail表建立一个普通索引,索引名和索引表达式均是“订单号”。(4)建立表 order list和表 order detail间的永久联系(通过“订单号”字段)。(分
2、数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.(1)在“学籍”数据库中有 student、score 和 course三个表,使用菜单设计器制作一个名为 menul的菜单,菜单只有一个“查询”菜单项。该菜单项中有“按学号”、“按课程号”和“退出”3 个子菜单。“按学号”和“按课程号”子菜单分别使用 SQL语句的 AVG函数统计各学生和课程的平均成绩。统计结果中分别包括“学号”、“姓名”、“平均成绩”和“课程编号”、“平均成绩”。“退出”子菜单负责返回到系统菜单。(2)在数据库“图书”中建立视图“tsview”,显示表 loans中的所有记录,并按“借书日期”降序排序。建立表单
3、 forml,在表单上添加“表格”控件显示新建立的视图的记录。(分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下创建一个下拉式菜单 mymenumnx,并生成菜单程序 enumpr。运行该菜单程序时会在当前 VFP系统菜单的末尾追加一个“考试”子菜单,如图 313 所示。 (分数:2.00)_国家二级 VF机试(操作题)-试卷 287答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.(1)打开“订货管理”数据库,并将表 order list添加到该数据库中。(2)在“订货管理”数据库中建立表 order detail
4、,表结构描述如下: 订单号 字符型(6) 器件号 字符型(6) 器件名 字符型(16) 单价 浮动型(10,2) 数量 整型(3)为新建立的 order detail表建立一个普通索引,索引名和索引表达式均是“订单号”。(4)建立表 order list和表 order detail间的永久联系(通过“订单号”字段)。(分数:2.00)_正确答案:(正确答案:【操作步骤】 (1)命令窗口执行: MODIFY DATABASE 订货管理, 新建数据库并打开数据库设计器。 在数据库设计器中右击,选择【添加表】,在“打开”对话框中双击“order list”表。 (2)在数据库设计器中右击,选择【新
5、建表】,在“新建表”中单击“新建表”按钮,在“创建”对话框的“输入表名”中输入“order detail”,单击“保存”打开表设计器。 根据题意,在表设计器中逐行输入每个字段的字段名,并设置字段类型和宽度,然后单击“确定”,系统询问“现在输入数据记录吗?”,单击“否”按钮。 (3)右击数据库设计器中的 order detail表,选择【修改】,打开 order detail表设计器,在“字段”中选“订单号”,在“索引”列中选择“升序”,单击“确定”保存。 (4)拖动 order list表“索引”下方的候选索引“订单号”到 order detail表中“索引”下方的普通索引“订单号”上,为两个
6、表建立联系。)解析:二、简单应用题(总题数:1,分数:2.00)2.(1)在“学籍”数据库中有 student、score 和 course三个表,使用菜单设计器制作一个名为 menul的菜单,菜单只有一个“查询”菜单项。该菜单项中有“按学号”、“按课程号”和“退出”3 个子菜单。“按学号”和“按课程号”子菜单分别使用 SQL语句的 AVG函数统计各学生和课程的平均成绩。统计结果中分别包括“学号”、“姓名”、“平均成绩”和“课程编号”、“平均成绩”。“退出”子菜单负责返回到系统菜单。(2)在数据库“图书”中建立视图“tsview”,显示表 loans中的所有记录,并按“借书日期”降序排序。建立
7、表单 forml,在表单上添加“表格”控件显示新建立的视图的记录。(分数:2.00)_正确答案:(正确答案:【操作步骤】 步骤 1:在命令窗口执行命令: CREATE MENu menul, 在弹出的“新建菜单”对话框中单击“菜单”图标按钮,打开菜单设计器。 步骤 2:在菜单设计器“菜单名称”列的文本框中输入“查询”,“结果”下拉框中选择为“子菜单“,单击“创建”按钮进入下级菜单设计,在“菜单名称”列的第 1、2、3 行文本框中依次输入子菜单名“按学号”、“按课程号”和“退出”,将3个子菜单的“结果”都设置为“命令”,然后在 3个菜单命令的“选项”文本框中分别输入相应的命令。如图 44 所示。
8、 步骤 3:三条命令语句如下: “按学号”菜单命令: SELECT 学号,AVG(成绩)FROM score GROUP BY学号。 “按课程号”菜单命令: SELECT 课程号,AVG(成绩)FROM sCOre GROUP BY 课程号。 “退出”菜单命令: SET sYSMENu To DEFAuLT。 步骤 4:执行【菜单】【生成】菜单命令,在弹出的 Visual FoxPro对话框中单击“是”按钮,接着系统会弹出“生成菜单”对话框,单击“生成”按钮生成一个可执行的菜单文件。 步骤 5:在命令窗口执行命令: DO menulmpr ,运行菜单查看结果(注意:执行文件时,文件扩展名不能缺
9、省)。 (2)【操作步骤】 步骤 1:在命令窗口执行命令: OPEN DATABAsE图书 ,打开“图书”数据库环境。 步骤 2:继续在命令窗口执行命令: CREATE VIEW ,打开视图设计器。在“添加表或视图”对话框中双击 loans表,将表添加到视图设计器中。 步骤 3:在“字段”选项卡中单击“全部添加”按钮,将“可用字段”中的全部字段添加到“选定字段”中;在“排序依据”选项卡中双击“选定字段”列表框中的“loans借书日期”字段,将字段添加到“排序条件”列表框中,在“排序选项”中选择“降序”单选项:单击“常用”工具栏中的“运行”按钮查看结果,将视图文件以文件名 tsview保存(视图
10、设计器的操作界面与查询设计器类似,部分操作界面可参考查询设计器图示)。 步骤 4:在命令窗口执行命令: CREATE FORM forml, 打开表单设计器。右击表单选择【数据环境】快捷菜单命令,打开表单数据环境,在“添加表或视图”对话框单击“视图”选项,然后双击tsview视图文件,将视图添加到表单数据环境中;将表单数据环境中的 tsview视图文件拖放到表单中,会出现一个表格控件自动显示视图中的数据。如图 45 所示。 )解析:三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下创建一个下拉式菜单 mymenumnx,并生成菜单程序 enumpr。运行该菜单程序时会在当前 VFP
11、系统菜单的末尾追加一个“考试”子菜单,如图 313 所示。 (分数:2.00)_正确答案:(正确答案:【操作步骤】 步骤 1:在命令窗口执行命令: CREATE MENu mymenu, 在弹出的“新建菜单“对话框中单击“菜单”图标按钮,打开菜单设计器。 步骤 2:在菜单设计器“菜单名称”列的文本框中输入“考试”主菜单名,“结果”下拉框中选择为“子菜单”,单击“创建”按钮进入下级菜单设计,在“菜单名称”列的第 1、2 行文本框中依次输入子菜单名“统计”和“返回”,将这 2个子菜单的“结果”都设置为“过程”,分别单击 2个过程后面的“创建”按钮打开过程编辑器,编写过程代码。步骤 3:两个过程代码
12、如下:“统计”菜单命令的过程代码:SELECT Customers姓名 as 客户名,count(*)as订单教;FROM customers INNER JOIN Orders; ON Customers客户号=Orders客户号;WHERE year(Orders签订日期) =2007,GROUP BY Customers姓名;ORDER BY 2 DESC,Customers姓名;INTO TABLE tabletWOdbf“返回”菜单命令的过程代码:SET SYSMENU NOSAVESEq,SYSNIENU TO DEFAULT 步骤 4:执行【显示】【常规选项】菜单命令,在弹出的“常规选项”对话框中选择“位置”中的“追加”单选钮,然后单击“确定”按钮,保存修改。 步骤 5:执行【菜单】【生成】菜单命令,在弹出的 Visual FoxPro对话框中单击“是”按钮,接着系统会弹出“生成菜单”对话框,在“输出文件”对话框中修改输出的文件名为:enumpr,单击“生成”按钮生成一个可执行的菜单文件。 步骤 6:在命令窗口执行命令: DO enumpr ,运行菜单程序,依次执行“统计”和“返回”菜单命令。)解析: