1、国家二级 VF机试(操作题)模拟试卷 136及答案与解析 一、基本操作题 1 在考生文件夹下,有一个学生数据库 sdb,打开该数据库,完成如下操作: (1)为学生表 student的 “性别 ”字段增加约束:性别 $”男女 ”,出错提示信息为 “性别必须是男或女 ”,默认值为 “女 ”。 (2)为学生表 student创建一个主索引,主索引的索引名为 sid,索引表达式为学号。为课程表 course创建一个丰索引,主索引的索引名为 cid,索引表达式为课程号。为选课表 sc创建一个主索引和两个普通索引 (升序 ),主索引的 索引名为 scid,索引表达式为 “学号 +课程号 ”;一个普通索引的
2、索引名为 sid,索引表达式为学号;另一个普通索引的索引名为 cid,索引表达式为课程号。 (3)通过 “学号 ”字段建立选课表 sc和学生表 student表间的永久联系。通过 “课程号 ”字段建立选课表 sc与课程表 course间的永久联系。并为以上建立的联系设置参照完整性约束:更新规则为 “级联 ”;删除规则为 “限制 ”;插入规则为 “限制 ”。 (4)使用报表向导建立一个简单报表。要求选择学生表 studerrc表中所有字段;记录不分组;报表样式为 “随 意式 ”;列数为 “1”,字段布局为 “列 ”,方向为 “纵向 ”:排序字段为 “学号 ”,升序;报表标题为 “学生基本情况一览
3、表 ”;报表文件名为one frx。 二、简单应用题 2 (1)用 SQL语句完成下列操作:检索 “田亮 ”所借图书的书名、作者和价格,结果按价格降序存入 book temp表中。 (2)在考生文件夹下有一个名为 menu_lin的下拉式菜单,请设计顶层表单form_menu,将菜单 menu_lin加入到该表单中,使得运行表单时菜单显示在本表单中,并在表单退出时释放菜单。 三、综合应用题 3 (1)在项目中建立查询 tscx,查询 books表中 “价格 ”大于等于 “70”的图书的所有信息,查询结果按 “价格 ”降序。 (2)(打开数据库 “外汇 ”)使用查询设汁器建立一个查询文件 fou
4、r qpr。查询要求:从外汇账户中禽询 “日元 ”和 “欧元 ”的记录。查询结果包括了外币名称、钞汇标志、金额,结果按 “外币名称 ”升序排序,在 “外币名称 ”相同的情况下按 “金额 ”降序排序,并将查询结果存储于表 five dbf中。 (3)打开 test db数据库,根据表 dept和表 sell并使用查询设计器设计一个名称为three的查询,按 “年度 ”分部门 (按年度和部门分组 )统计 “月平均销售 ”(通过销售额计算 )、 “月平均工资 ”(通过工资额计算 )和 “月平均利润 ”(通过 “月平均销售一月平均工资 ”计算 )。查询统计结果按 “部门号 ”、 “年度 ”升序排序,并
5、将查询结果输出到表tabb中。表 tabb的字段名依次为: “部门号 ”、 “部门名 ”、 “年度 ”、 “月平均销售 ”、“月平均工资 ”、 “月平均利润 ”。设计完成后,运行该查询。 国家二级 VF机试(操作题)模拟试卷 136答案与解析 一、基本操作题 1 【正确答案】 (1) 命令窗口执行: MODIFY DATABASE sdb,打开数据库设计器。 数据库设计器中,右击 student表,选择【修改】,打开表设计器, “字段 ”选项卡选中 “性别 ”, “字段有效性 ”的 “规则 ”中输入:性别 $“男女 “, “信息 ”框中输入: “性别必须是男或女 ”, “默认值 ”文本框中输入
6、: “女 “。 (2) 接上题,在 student表设计器中, “字段 ”选项卡选中 “学号 ”, “索引 ”列中选“升序 ”,在 “索引 ”选项卡中修改 “索引名 ”为 “sid”,修改 “类型 ”为 “主索引 ”,单击 “确定 ”按钮保存表结构修改。 与上题 同样的方法为 course表建立名为 “cid”,的 “主索引 ”,单击 “确定 ”按钮保存表结构修改。 数据库设计器中,右击 sc表选择【修改】,打开农设计器, “索引 ”选项卡中,“索引名 ”下方的文本框中输入 “scid”, “索引 ”选项卡中将 “类犁 ”选择为 “主索引 ”,“表达式 ”下方的文本框中输入 “学号 +课程号
7、”,建立主索引。 接第 步,在 SC表设计器的 “索引 ”选项卡中,第二行的 “索引名 ”文本框中输入“sid”,将 “类型 ”选择为 “普通索引 ”, “表达式 ”下方的文本框中输入 “学号 ”,建立一个普通索引:在第三行的 “索引名 ”文本 框中输入 “cid”, “类型 ”选择为 “普通索引 ”,“表达式 ”中输入 “课程号 ”,建立普通索引,单秆 “确定 ”保存修改。 (3) 在数据库设计器中,拖动 student表 “索引 ”下方的主索引 “sid”到 sc表中 “索引 ”下方的普通索引 “sid”上,为两个表建立联系。 拖动 course表 “索引 ”下方的主索引 “scid”到
8、sc表中 “索引 ”下方的普通索引 “cid”是,为两个表建立联系。 选中 student和 sc两个表之间的关联线 (被选中的线会变粗 ),首先执行【数据库】 【清理数据库】菜单命令,清空数据库表中带有删除标记的 记录,然后执行【数据库】 【编辑参照完整性】菜单命令。在打开的 “参照完整性 ”对话框的表格中,将其中的两对关系均做如下操作:选择 “更新 ”下的单元格内容为 “级联 ”: “删除 ”下的单元格内容为 “限制 ”; “插入 ”下的单元格内容为 “限制 ”。单击 “确定 ”按钮保存参照完整悱的修改。 (4) 命令窗口执行: OPEN DATABASE sdb,打开 sdb数据库。 执
9、行【文件】 【新建】菜单命令,或单击 “常用 ”工具栏的 “新建 ”按钮,任弹出的 “新建 ”对话框中选中 “报表 ”选项,单击 “向导 ”按钮,弹出 “向导选取 ”对话框,选中 “报表向导 ”项,单击 “确定 ”按钮,启动报表向导。 “步骤 1-字段选取 ”的 “数据库和表 ”下选 student表,将 “可用字段 ”中的字段全部添加到 “选定字段 ”中,单击 “下一步 ”按钮。 “步骤 2-分组记录 ”中,单击 “下一步 ”按钮。 “步骤 3-选择报农样式 ”的 “样式 ”下选择 “随意式 ”,单击 “下一步 ”按钮。 “步骤 4-定义报表布局 ”的 “列数 ”下输入 “1”,在 “字段布
10、局 ”下选 “列 ”,在 “方向 ”下选 “纵向 ”,单击 “下一步 ”按钮。 “步骤 5一排序记录 ”中双击 “可用的字段或索引标识 ”中的 “学号 ”字段到 “选定字段 ”中,再选择 “升序 ”,单击 “下一步 ”按钮。 “步骤 6-完成 ”中 “报表标题 ”下方文本框中输入 “学生基本情况一览表 ”,单击“完成 ”按钮。 在 “另存为 ”对话框的 “保存报表为: ”框中输入报表文件名 one,单击 “保存 ”按钮。 【试题解析】 本题考查字段有效性规则的建立:表索引的建立:数据库表间永久联系的建立和参照完整性约束的设置;报表向导的使用。 建立有效性规则和设置默认值是在表设计器中操作 的,
11、要注意先选中需要建立有效性规则的字段。在表设计器的 “字段 ”选项卡中,可以选择 “排序 ”下拉框中的“升序 ”或 “降序 ”为指定的字段建立一个索引名与索引表达式相同的普通索引, “索引 ”选项卡中可改变索引名或索引类型。 参照完整性是针对两个表进行设置的,要先建立两个表的关联,且有一个表中必须建立关联字段的主索引 (或候选索引 ),另一个表要建立普通索引,建立两个表联系后要先清理数据库,然后再设置参照完整性。 二、简单应用题 2 【正确答案】 (1)在命令窗口执行命令: 1 SELECT Book书名, Book作者, Book价格; 2 FROM 图书 !bookINNER JOIN图书
12、 !loans; 3 INNER JOIN图书 !borrows ; 4 ON Loans借书证号 =Borrows借书证号; 5 ON Book图书登记号 =Loans图书登记号; 6 WHERE Borrows姓名 = “田亮 “; 7 ORDER BY Book价格 DESC; 8 INTO TABLE book-temp dbf (1)步骤 1:命令窗口执行: CREATE FORM form-menu,打开表单设计器。选中表单,在 “属性 ”窗口中修改表单 (Forml)的 “ShowWindow”属性值设置为 “2一作为顶层表单 ”。 步骤 2:双击表单 (Form1)编写表单的
13、Init事件代码: DO menu Lin.mpr WITH THIS ,XXX 步骤 3:双击表单 (Forml)编写其 Destroy事件代码: RELEASE MENU xxx EXTENDED 步骤 4:单击 “常用 ”工具栏中的 “运行 ”按钮查看结果,将表单文件保存到考生文件夹下。 【试题解析】 (1)本题考查的是 SQL联接查询。根据题意,该查询用到了 book、loans和 borrows三张表,对应有两个联接表达式。 (2)本题主要考查的是菜单在顸层表单中的应用。主要包括两大部分的操作,菜单设计和表单设计。操作过程可按以下步骤进行: 菜单设计有两个关键操作:一是在菜单设计器中
14、勾选 “常规选项 ”对话框中的 “顶层表单 ”;二是在释放表单时,要使用表单的文件名,本题可通过MAINFORM RELEASE命令释放 MAINFORM表单,注意:不要使用THISFORM RELEASE命令释放表单。 表单设计中,要注意通过表单的 showwindow属性值设置为顶层表单,在表单的 Load(或 INIT)事件中调用菜单文件,还要用 THIS短语指定当前表单对象的引用。基本格式: DOWITH THIS, “。 三、综合应用题 3 【正确答案】 (1)步骤 1:在项目管理器中选中 “数据 ”选项卡内的 “查询 ”项,单击“新建 ”按钮,系统弹出 “新建查询 ”对话框,然后
15、,单击 “新建查询 ”按钮,打开查询设计器,在 “添加表或视图 ”对话框中,双击 books表,将表添加到查询设计器中。 步骤 2:在 “字段 ”选项卡中单击 “全部添加 ”按钮,将 “可用字段 ”中的全部字段添加到 “选定字段 ”中。 步骤 3:在 “筛选 ”选项卡的 “字段名 ”下拉列表框中选择 “books价格 ”字段,在“条件 ”下拉框中选择 “=”,在 “实例 ”文本框中输入 “70”。 步骤 4:在 “排序依据 ”选项卡内双击 “选定字段 ”列表框中的 “books价格 ”字段,将字段添加到 “排序条件 ”列表框中,在 “排序选项 ”中选 择 “降序 ”单选项。 步骤 5:单击 “
16、常用 ”工具栏中的 “运行 ”按钮查看结果,将查询文件以文件名 tscx保存到考生文件夹下。 (2)“筛选 ”、 “查询去向 ”按以下说明设置: 在 “筛选 ”选项卡的 “字段名 ”下拉列表中选择 “外汇代码外币名称 ”字段,在“条件 ”下拉框中选择 “=”,在 “实例 ”框中输入 “日元 ”,在 “逻辑 ”下拉框中选择“OR”;接着在第二行接着输入查询条件,在 “字段名 ”下拉列表中选择 “外汇代码外币名称 ”字段,在 “条件 ”下拉框中选择 “: ”,在 “实例 ”框中输入 “欧元 ”。 执行【 查询】 【查询去向】菜单命令,在弹出的 “查询去向 ”对话框中单击“表 ”图标按钮,接着在 “
17、表名 ”中输入文件名 “five”,单击 “确定 ”按钮。 最后单击 “常用 ”工具栏中的 “运行 ”按钮查看结果,将查询文件保存到考生文件夹下。 (3)“字段 ”和 “分组依据 ”选项卡按如下说明设置: 依次双击 dept表中的 “部门号 ”、 “部门名 ”字段和 sell表中的 “年度 ”字段添加到“字段 ”选项卡的 “选定字段 ”列表中,接着在 “函数和表达式 ”框中输入:AVG(Sell销售额 )AS月平均销售,再单击 “添加 ”按钮,将 表达式添加到 “选定字段 ”列表中,以同样的方法,再添加 “AVG(Sell工资额 )AS月平均工资 ”和“AVG(Sell销售额 -Sell工资额 )AS月平均利润 ”两个表达式到 “选定字段 ”列表框中。 在 “分组依据 ”选项卡内,依次双击 “选定字段 ”列表框中的 “Dept部门号 ”和“Sell年度 ”字段,将字段添加到 “分组字段 ”列表框中。