1、国家二级 VF机试(操作题)模拟试卷 37及答案与解析 一、基本操作题 1 在考生文件夹下有 order、 orderitem和 goods三个表。其中, order表包含订单的基本信息, orderitem表包含订单的详细信息, goods表包含图书商品的相关信息。 (1)创建一个名为 “订单管理 “的数据库,并将考生文件夹下的 order、 orderitem和goods三个表添加到该数据库中。 (2)在表设计器中为 order表建立一个普通索引,索引名为 nf,索引表达式为“year(签订日期 )“。 (3)通过 “订单号 “为 order表和 orderitem表建立一个一对多的永久联
2、系,它们的索引名均为 “订单号 “,其中 order表为父表, orderitem表为子表。 (4)为上述建立的联系设置参照完整性约束:更新规则为 “限制 “,删除规则为 “级联“,插入规则为 “限制 “。 二、简单应用题 2 (1)利用查询设计器创建查询,要求从 order、 orderitem和 goods三个表中查询2001年签订的所有订单信息,查询结果依次包含订单号、客户名、签订日期、商品名、单价和数量 6项内容。各记录按订单号降序排列,若订单号相同再按商品名降序排 列。查询去向为表 tableone。最后将查询保存在 queryone.qpr文件中,并运行该查询。 (2)在考生文件夹
3、下有表单文件 myform.scx,其中包含一个标签、一个文本框和一个命令按钮 (不要改变它们的名称 )。如下图所示: 编写 “确定 “按钮的 Click事件代码,当表单运行时,单击该命令按钮可以查询在文本框中输入的指定客户的所有订单信息,查询结果依次包含订单号、签订日期、商品名、单价和数量 5项内容。各记录按订单号升序排列,若订单号相同按商品名升序排列,将查询结果存放在表 tabletwo中。设置完成后运行 表单,在文本框中输入客户名 lilan,单击 “确定 “按钮完成查询。 三、综合应用题 3 在考生文件夹下创建一个名为 mymenu.mnx的下拉式菜单,生成菜单程序mymenu.mpr
4、。运行该菜单程序时会在当前 Visual FoxPro系统菜单的末尾追加一个“考试 “子菜单,如下图所示。 “计算 “和 “返回 “菜单命令的功能都通过执行 “过程 “完成。 “计算 “菜单命令的功能是计算各商品在2001年的订购总金额,若某商品没有被订购,则其总金额为零。将计算结果保存在 tablethree表中,其中包含商品名和总金额两个字段 ,各记录按商品升序排列。提示:可分两步完成,首先从表 order和 orderitem中获取 2001年订单中有关商品数量的信息,并保存在临时表中,然后将表 goods与临时表进行左联接,并完成总金额的计算。 “返回 “菜单命令的功能是恢复到 Vis
5、ual FoxPro的系统菜单。生成菜单程序后,运行菜单程序并依次执行 “计算 “和 “返回 “菜单命令。 国家二级 VF机试(操作题)模拟试卷 37答案与解析 一、基本操作题 1 【正确答案】 【操作步骤】 步骤 1:通过 “新建 “对话框新建一个数据库,文件名为 “订单管理 “,在打开 的数据库设计器中右键单击空白处,选择 “添加表 “命令,依次将考生文件夹下的 order、orderitem和 goods三个表添加到数据库中。 步骤 2:在数据库设计器中,右键单击 “order“表,选择 “修改 “命令,在表设计器对话框中单击 “索引 “选项卡,在 “索引名 “中输入 “nf“,在 “类
6、型中 “选中 “普通索引 “,在“表达式 “中输入 “year(签订日期 )“,为 order表建立普通索引。 步骤 3:按 照 “步骤 2“为 orderitem表建立普通索引, order表建立主索引,它们的索引名和索引表达式均为 “订单号 “。然后从 order表的主索引处拖动鼠标至 orderitem表的普通索引处,以建立两表之间的永久联系。 步骤 4:首先执行 “数据库 “菜单下的 “清理数据库 “命令,然后选中并右击上一步骤中建立的两表之间的关系线,选择 “编辑参照完整性 “命令,在 “编辑参照完整性生成器 “对话框中,依次选中 “更新规则 “选项卡下的 “限制 “单选按钮、 “删
7、除规则 “选项卡下的 “级联 “单选按钮、 “插入规则 “选项卡下的 “限制 “单选按钮,最后单 击 “确定 “按钮。 二、简单应用题 2 【正确答案】 (1)【操作步骤】 步骤 1:新建一个查询,依次把表 order、 orderitem和 goods表添加到查询设计器中。 步骤 2:在字段选项卡中,依次双击订单号、客户号、签订日期、商品名、单价和数量。 步骤 3:在筛选选项卡中设置 “year(order.签订日期 ) 2001“,在排序依据选项卡中,先按 “订单号 “降序,然后再按 “商品名 “降序。 步骤 4:在查询菜单中选择 “查询去向 “,选择去向为表,输入表名: tableone
8、。 步骤 5:保存查询文件名为: queryone,并运行查询。 (2)【操作步骤】 步骤 1:打开表单 myform,双击 “确定 “按钮,在其 Click事件里写入如下语句。 *“确定 “按钮的 Click事件代码 * x=allt(ThisForm.Text1.Value) sele a.订单号 ,签订日期 ,商品名 ,单价 ,数量 ; from order a,orderitem b,goods c; where a.订单号 =b.订单号 and b.商品号 =c.商品号 and 客户名 =x; order by a.订单号 ,商品名 into table tabletwo * 步骤
9、2:保存并运行表单,在文本框里输入 lilan 并单击 “确定 “按钮。 【试题解析】 通过查询设计器完成查询,打开表单,写入命令按钮的 Click事件。 三、综合应用题 3 【正确答案】 【操作步骤】 步骤 1:新建一个菜单,在菜单名称里输入 “考试 “,在结果里选择 “子菜单 “,单击创建。在子菜单里输入 “计算 “和 “返回 “。 步骤 2:在 “计算 “右边选择 “过程 “,输入如下程序。 * sele 商品名 ,sum(数量 *单价 ) 总金额 ; from orderitem a,goods b,order c; where a.商品号 =b.商品号 and c.订单号 =a.订单号 and year(签订日期 )=2001; group by a.商品号 order by 商品名 into table tablethree * 步骤 3:选择 “退出 “菜单项的 “结果 “为 “过程 “。输入如下命令语句 “set sysm to defa“。 步骤 4:在菜单的 “常规选项 “对话框里选择 “追加 “。 步骤 5:然后保存菜单名为: mymenu,最后生成可执行菜单文件。在命令窗口里输入: DO MYMENU.MPR并回车,在 “考试 “菜单里执行 “计算 “。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1