1、国家二级 VF机试(操作题)模拟试卷 536及答案与解析 一、基本操作题 1 在考生文件夹下有 customers(客户 )、 orders(订单 )、 orderitems(订单项 )和goods(商品 )4个表。 (1)创建一个名为 “订单管理 ”的数据库,并将考生文件夹下的 customers表添加到该数据库中。 (2)利用表设计器为 customers表建立一个普通索引,索引名为 bd,表达式为 “出生日期 ”。 (3)在表设计器中为 customers表的 “性别 ”字段设置有效性规则,规则表达式为:性别 $”男女 ”,出错提示信息是: “性别必须是男或女 ”。 (4)利用 INDE
2、X命令为 customers表建立一个普通索引,索引名为 khh,表达式为“客户号 ”,索引存放在 customers cdx中。然后将该 INDEX命令存入命令文件pone prg中。 二、简单应用题 2 (1)在考生文件夹下创建一个名为 formone的表单文件,其中包含一个标签(Label1)、一个文本框 (Text1)和一个命令按钮 (Command1),如下图所示,然后按要求完成相应操作。 如上图所示设置表单、标签和命令按钮的 Caption属性。 设置文本框的 Value属性值为表达式 “Date()”。 编写 “查询 ”按钮的 Click事件代码,使得表单运行时,单击该按钮完成如
3、下查询功能:从 customers表中查询指定日期以后出生的客户,查询结果依次包含姓名、性别、出生日期 3项内容,各记录按出生日期降序排列,查询去向为表 tableone。 运行该表单,查询 1980年 1月 1日以后出生的客户。 (2)向名为 “订单管理 ”的数据库 (在基本操作题中建立 )添加 orderitems表。在数据库中创建视图viewone:利用该视图可以从 orderitems表中查询各商品的订购总量,查询结果依次包含商品号和订购总量两项内容,即所有订单对该商品的订购数量之和,各记录按商品号升序排列。最后利用该视图查询视图中的全部信息,并将查询结果存放在表 tabletwo中。
4、 三、综合应用题 3 在考生文件夹下创建一个名为 myform的顶层表单,表单的标题为 “考试 ”,然后在表单中添加菜单,菜单的名称为 mymenu mnx,菜单程序的名称为mymenu mpr。效果如下图所示。(1)“计算 ”和 “退出 ”菜单命令的功能都通过执行 “过程 ”完成。 (2)“计算 ”菜单命令的 功能是根据 orderitems表和 goods表中的相关数据计算各订单的总金额,其中一个订单的总金额等于它所包含的各商品的金额之和,每种商品的金额等于数量乘以单价。并将计算的结果填入orders表的相应字段中。 (3)“退出 ”菜单命令的功能是关闭并释放表单。 运行表单并依次执行其中
5、的 “计算 ”和 “退出 ”菜单命令。 国家二级 VF机试(操作题)模拟试卷 536答案与解析 一、基本操作题 1 【正确答案】 【操作步骤】 (1)新建并打开数据库 “订单管理 ”,在数据库设计器的空白处单击鼠标右键,选择 “添加表 ”命令,将考生文件夹下的表 “customers”添加到新建的数据库中。 (2)在数据库设计器中右键单击表 “customers”,选择 “修改 ”命令,在弹出的表设计器中单击 “索引 ”选项卡,输入索引名 “bd”,选择类型为 “普通索引 ”,输入表达式“出生日期 ”,最后单击 “确定 ”按钮,保存对表的修改。 (3)以同样的方式打开 customers表设计
6、器,选中字段 “性别 ”,在规则文本框中输入:性别 $”男女 ”,在信息文本框中输入: “性别必须是男或女 ”。 (4)新建一个程序,编写下列命令语句。 Use customers index on客户号 tag khh 保存程序名为 pone prg,并运行程序。 二、简单应用题 2 【正确答案】 (1)【操作步骤】 步骤 1:在命令窗口输入 “Crea form formone”,新建一个表单,按题目要求添加控件并修改控件的属性,将 customers表添加到数据环境中。 步骤 2:然后将 Text1的 Value属性设置为 “ date()”,编写 “查询 ”按钮的 Click事件代码如
7、下。 *“查询 ”按钮的 Click事件代码 * x ThisForm Text1 Value SELECT Customers姓名, Customers性别, Customers出生日期; FROM customers; WHERE Customers出生日期 x; ORDER BY customers出生日期 DESC; INTO TABLE tableone dbf * 步骤 3:保 存并运行表单,查看表单的运行结果。 (2)【操作步骤】 步骤 1:打开考生文件夹下的 “订单管理 ”数据库,在数据库设计器中右键单击数据库的空白处,选择 “添加表 ”命令,将 orderitems表添加到数
8、据库中。 步骤 2:新建一个视图,将 orderitems表添加到视图设计器中;在 “字段 ”选项卡中,将字段 “商品号 ”和表达式 “SUM(Orderitems数量 )AS订购总量 ”添加到 “选定字段 ”列表框中;在 “排序依据 ”选项卡中,选择按商品号升序排序记录,在 “分组依据 ”选项卡中将 “商品号 ”设置为分组 字段。 步骤 3:将视图保存为 “viewone”。 步骤 4:新建一个查询文件,将新建的 “viewone”视图添加到新建的查询中,选择其中的全部字段,设置查询去向为表 “tabletwo”,保存并运行查询,查询文件名默认。 三、综合应用题 3 【正确答案】 【操作步骤
9、】 步骤 1:新建一个表单,修改表单的 Caption为 “考试 ”, ShowWindow属性为 “2作为顶层表单 ”。 步骤 2:双击表单空白处,编写表单的 Init。 DO mymenu mpr WITH THIS “myform“ 步骤 3:新建一个菜单,选择 “显示 ”菜单下的 “常规选项 ”命令,在弹出的 “常规选项 ”对话框中勾选 “顶层表单 ”。 步骤 4:输入菜单项 “计算 ”和 “退出 ”,结果均选择 “过程 ”,然后单击两个菜单项后面的 “创建 ”按钮,分别编写如下代码。 *“计算 ”菜单项中的命令代码 * SELECT orderitems订单号, sum(orderi
10、tems数量 *goods单价 )as总金额; FROM orderitems, goods; WHERE orderitems商品号 Goods商品号; GROUP BY orderitems订单号; ORDER BY orderitems订单号; INTO TABLE temp dbf CLOSE ALL SELE 1 USE temp INDEX ON 订单号 TO ddh1 SELE 2 USE orders INDEX ON订单号 To ddh2 SET RELATION To订单号 INTO A DO WHILE NOT EOF() REPLACE总金额 WITH temp总金额 SKIP ENDDO BROW * *“退出 ”菜单项中的命令代码 * myform Release * 步骤 5:保存菜单名为 “mymenu”并生成可执行文件。 步骤 6:保存表单名为 “myform”并运行。