1、国家二级 VF机试(操作题)模拟试卷 213及答案与解析 一、基本操作题 1 (1)请在考生文件夹下建立一个项目 xm。 (2)将考生文件夹下的数据库 kshj加入到新建的项目 xm中。 (3)利用视图设计器在数据库中建立视图 myview,视图包括 “获奖情况 ”表的全部字段 (顺序同 “获奖情况 ”表中的字段 )和全部记录。 (4)从表 “获奖情况 ”中查询 “等级 ”为 “一等奖 ”的学生的全部信息 (“国籍 ”表的全部字段 ),并按 “分数 ”的升序存入新表 temp中。 二、简单应用题 2 (1)将 order_listl表中的全部记录追加到 order_list表中,然后用 SQL
2、 SELECT语句完成查询:按总金额降序列出所有客户的客户号、客户名及其订单号和总金额,并将结果存储到 results表中 (其中客户号、客户名取自 customer表,订单号、总金额取自 order_list表 )。 (2)打开 form1表单,并按如下要求进行修改 (注意:最后保存所做的修改 ): 表单中有 5个随机排列的命令按钮,不要移动或改变 “基准按钮 ”的位置 (否则影响成绩 ),然后使其他命令按钮与 “基准按钮 ”左部对齐。 在这组命令按钮的右边添加一个表格控件,并将它的 RecordSourceType属性设置为 “表 ”,然后设置另一个相关属性使在表格控件中显示 custom
3、er。表的记录。 三、综合应用题 3 使用报表设计器建立一个报表,具体要求如下: 报表的内容 (细节带区 )是 order_list表的订单号、订购日期和总金额。 增加数据分组,分组表达式是 “order_list客户号 ”,组标头带区的内容是 “客户号 ”,组注脚带区的内容是该组订单的 “总金额 ”合计。 增加标题带区,标题是 “订单分组汇总 表 (按客户 )”,要求是三号字、黑体,括号是全角符号。 增加总结带区,该带区的内容是所有订单的总金额合计。最后将建立的报表文件保存为 report1 frx文件。 提示:在考试的过程中可以使用 “显示 预览 ”菜单查看报表的效果。 国家二级 VF机试
4、(操作题)模拟试卷 213答案与解析 一、基本操作题 1 【正确答案】 (1)在命令窗口执行命令: CREATE PROJECT xm,新建一个项目管理器。 (2)在项目管理器中选中 “数据 ”选项卡内的 “数据库 ”项,然后单击 “添加 ”按钮,在弹出的 “打开 ”对话框中双击 ksh j数据库文件,将数据库添加到项目管理器中。 (3) 在项目管理器中单击 “数据库 ”前面的 “+”号,依次展开 “数据库 ”“kshi” 。如图 3 8所示。 选中 “本地视图 ”项单击“新建 ”按钮,接着在弹出的 “新建本地视图 ”对话框中单击 “新建视图 ”图标按钮,打开视图设计器。在 “添加表或视图 ”
5、对话框中双击 “获奖情况 ”表,将表添加到视图设计器中。 在 “字段 ”选项卡中单击 “全部添加 ”按钮,将 “可用字段 ”中的全部字段添加到 “选定字段 ”中。 单击 “常用 ”工具栏中的 “运行 ”按钮查看结果,将视图文件以文件 名 myview保存。 (4)在命令窗口输入以下命令,将结果输出到 temp表中 (以下程序是通过查询设计器生成 )。 1 SELEC7 国籍 *; &选择需要输出的字段, “*”表示表中所有字段 2 FROM kshj!国籍 INNER JOIN kshj!获奖情况; &选择要进行联接的表 3 ON 国籍姓名 =获奖情况,姓名; &设置两个表的联接条件 4 WH
6、ERE获奖情况等级 =“一等奖 “; &设置输出记录要满足的条件 5 ORDER BY获奖情况分数; &设置输出记录的排序条件 6 INTO TABLE temp dbf &指定查询结果输出到数据表 temp中 (注意:程序中的 “&”符号是功能注释符,该符号及后面的注释文字不会影响程序的执行,是对命令功能的说明,非查询设计器生成的内容,考生在做题过程中可以不输入该注释内容,凡书中后面出现此符号则与本题相同,不再加以说明。 ) 【试题解析】 本大题考查了项目管理器的建立及使用;视图设计器及查询设计器的使用。 新建项目可以通过菜单、工具栏或命令方式完成;向项目中添加数据库可以通过项目管理器右侧的
7、 “添加 ”命令按钮完成。 视图和查询的操作类 似,在设计第 4小题时,熟悉 SQL命令的考生也可以直接通过编写 SQL命令进行查询。 二、简单应用题 2 【正确答案】 (1) 步骤 1:在命令窗口执行如下 SQL命令语句并执行: SELECT * FROM ORDER_LIST1 INTOARRAY TEMPINSERT INTO ORDER LIST FROM ARRAYTEMP 步骤 2:在命令窗口执行如下 SQL命令语句并执行 (以下 SQL语句是通过查询设计器生成的 ): SELECT customer客户号, customer客户名,Order_list订 单号,; Order_l
8、ist总金额; FROM 订货管理 !order_list INNERJOIN customer ; ON order_list客户号 =customer客户号; ORDER BY Order-list总金额 DESC; INTO TABLE results Dhf (2) 步骤 1:在命令窗口执行命令: MODIFY FORM form1,打开表单设计器修改表单。步骤 2:右击工具栏的空白区域,选择【布局】快捷菜单命令,打开表单的 “布局 ”工具栏 (如果表单设计器中没有显示该工具栏,则执行该操作 )。 步骤 3:同时选中表单中的 5个按钮,然后单击 “布局 ”工具栏中的 “左边对齐 ”按钮
9、 (第 1个图标按钮 ),如图 3 51和图 3 52所示。步骤 4:在表单设计器中 5个按钮的右侧添加一个表格控件,在 “属性 ”面板的下拉框中选择表格 grid1对象,在 “全部 ”选项卡中修改表格对象属性值,见表 3-38。 步骤 5:单击 “常用 ”工具栏中的 “保存 ”按钮保存表单。 【试题解析】 (1本题考查了 SQL简单查询和联接查询。 要将 order_list1表中的全部记录追加到 order_list表中,可以分两步实现:先将order_list1表的所有记录查询出来保存在数组中,再通过该数组向 order_list表中插入所有记录,这里会用到 SQL的 INSERT IN
10、TO语句。 题目中要求的 SQL SELECT查询语句是联接查询。对于掌握 SQL语句不熟练的考生来说,可以通过查询设计器生成 SQL语句。 (2)本题主要 考查了表单控件常用属性的设置; “布局 ”工具栏的使用。 在表单设计器中,可以通过 “布局 ”工具栏方便地调整表单窗口中被选控件的相对大小和位置。 三、综合应用题 3 【正确答案】 步骤 1:命令窗口执行: CREATE REPORT REPORT1,打开报表设计器。 步骤 2:右击报表选择【数据环境】,在报表数据环境中单击右键选择【添加】,在 “添加表或视图 ”对话框中双击 order_list表,将表添加到报表数据环境中。 步骤 3:
11、右击报表数据环境中的 order_list表,选择【属性】,在报表属性面板中修改 “Order”属性值为 “客户号 ”,该操作是为了让记录能按 “客户号 ”索引排序的数据。 步骤 4:从报表数据环境的 order_list表中,依次拖动 “订单号 ”、 “订购日期 ”和 “总金额 ”字段到报表设计器的细节带区,再通过 “报表控件 ”工具栏向报表的“页标头 ”中添加 3个名为 “订单号 ”、 “订购日期 ”和 “总金额 ”的标签控件,调整标签与细节带区字段的位置。如图 3 30所示。步骤 5:执行【报表】 【数据分组】菜单命令,弹出 “数据分组 ”对话框,单击 “表达式 ”行的表达式生成器按钮,
12、在其中的 “字段 ”列表中双击 “order_list客户号 ”字段,单击 “确定 ”返回 “数据分组 ”表达式,单击 “确定 ”关闭对话框,可看到添加了 “组标头 ”和 “组注脚 ”两个带区。如图 3 31所示。 步骤 6:调整组标头的显示区域 (向下拖动 “组标头 ”栏 ),将 order_list表中的 “客户号 ”字段拖到该区域,并添加一个名为 “客户号: ”的标签控件。 步骤 7:调整组注脚的显示区域,通过 “报表控件 ”工具栏向报表的 “组注脚 ”添加一个域控件,系统弹出 “报表表达式 ”对话框,单击 “表达式 ”行的表达式生成器按钮,在 “表达式生成器 ”对话框的 “字段 ”列表
13、中双击 “order_list总 金额 ”字段,单击 “确定 ”按钮返回 “报表表达式 ”对话框;单击 “格式 ”行中的表达式按钮弹出 “格式 ”对话框,选中 “数值型 ”选项,单击 “确定 ”按钮返回 “数据分组 ”表达式;在 “报表表达式 ”对话框中单击 “计算 ”按钮,在 “计算字段 ”对话框中选中 “总和 ”,单击 “确定 ”按钮返回 “数据分组 ”表达式,单击 “确定 ”按钮关闭对话框,可看到 “组注脚 ”区域增加了一个 “总金额 ”域控件。为该字段添加名为“总金额: ”的标签。如图 3 32所示。步骤 8:执行【报表】 【标题总结】菜单命令,在 “标题总结 ”对话框中分别勾选 “标
14、题带区 ”和 “总结带区 ”复选框,单击 “确定 ”按钮可看到报表设计器中添加了 “标题 ”和 “总结 ”带区。 步骤 9:执行【报表】 【默认字体】菜单命令,在 “字体 ”对话框中选 “字体 ”为 “黑体 ”, “字号 ”为 “三号 ”;接着再向报表的 “标题 ”带区添加 个标签控件,输入标签标题为:订单分组汇总袭 (按客户 );再按照 “步骤 7”的操作,为 “总结 ”带区添加一个 “总金额 ”的域控件和一个 “总金额: ”的标签。设计结果如图 3 33(a)所示。单击“常用 ”工具栏中的 “预览 ”按钮可浏览报表设计效果,如图 3 33(b)所示。【试题解析】 本大题考查的是分组 报表的
15、设计。建立分组报表的关键包括以下几点: 在数据环境中要指定索引项便于记录分组,这是最关键的步骤,可以通过报表“属性 ”面板中的 “order”属性指定,注意指定前要先向数据环境中添加表。 指定索引项后,在 “数据分组 ”对话框中设置 “数据分组 ”表达式是: order list客户号。 将表中字段按要求放到报表各个带区之后,再利用域控件计算总金额数值,注意本题有两个计算 “总金额 ”的地方,一个是每组的总金额,另一个是全部记录的总金额,注意两个总金额所处的带区位置不要弄错;另外,设置域控件格 式时,格式应为 “数值型 ”,计算方式为 “总和 ”,分别在 “格式 ”对话框和 “计算字段 ”对话框中进行设置。 最后,设置报表标签格式可以通过【报表】 【默认字体】菜单命令打开 “字体 ”对话框进行设置,注意,应先设置标签的字体格式,然后再向报表设计器中添加标签,该字体格式的设置对已存在的标签文字无效。