当前所在位置:珠峰网资料 >> 计算机 >> 计算机等级考试 >> 正文
2015年计算机等考二级VF上机冲刺模拟试题(2)
发布时间:2010/9/9 11:52:53 来源:www.xue.net 编辑:城市总裁吧
    一、基本操作题(共四小题,第1和2题是7分、第3和4题是8分)

  在考生目录下完成如下操作:

  1. 打开"订货管理"数据库,并将表order_list添加到该数据库中。

  2. 在"订货管理"数据库中建立表order_detail,表结构描述如下:

  订单号 字符型(6)

  器件号 字符型(6)

  器件名 字符型(16)

  单价 浮动型(10.2)

  数量 整型

  3. 为新建立的order_detail表建立一个普通索引,索引名和索引表达式均是"订单号"。

  4. 建立表order_list和表order_detail间的永久联系(通过"订单号"字段)。

  解答:

  1、方法1:命令方法

  在命令窗口直接输入下列两条命令:open database 订货管理

  add table order_list

  方法2:菜单方法

  单击“文件”菜单,选择“打开”项。在文件类型中选择“数据库”,单击“订货管理”,单击“确定”即打开了数据库,并进入到数据库设计器。

  在数据库设计器中的空白位置,单击鼠标右键,在弹出的快捷菜单中单击“添加”命令。将题目要求的自由表添加到数据库中。

  2、方法1:菜单操作。在数据库设计器的空白处单击鼠标右键,在弹出的菜单中选择“新建表”,进入“表设计器”后,分别输入各字段的字段名、类型、宽度和小数位数,最后单击“确定”按钮。

  方法2:命令方法,在命令窗口中直接输入如下命令:

  create table order_detail(订单号 C(6),器件号 C(6),器件名 C(16),单价 N(10,2))

  3、方法1:菜单方法。打开order_detail表的设计器,选择索引页框,输入索引名、选择索引类型、输入索引表达式,然后单击“确定”按钮。

  方法2:命令方法。在命令窗口中直接输入如下命令:

  index on 订单号 tag 订单号

  4、首先打开数据库设计器。通过拖动索引建立表间永久关系。
[NextPage]

 二、简单应用(2小题,每题20分,计40分)

  在考生目录下完成如下简单应用:

  1. 将order_detail1表中的全部记录追加到order_detail表中,然后用SQL SELECT语句完成查询:列出所有订购单的订单号、订购日期、器件号、器件名和总金额(按订单号升序,订单号相同再按总金额降序),并将结果存储到results表中(其中订单号、订购日期、总金额取自order_list表,器件号、器件名取自order_detail表)。

  解答:

  追加记录:

  close all

  use order_detail1

  append from order_detail

  SQL查询部分可以用查询设计器的方法:

  首先将要操作的两个表添加到查询设计器:(order_list和order_detail)

  选择输出字段,注意各表字段来源按试题要求进行:其中订单号、订购日期、总金额取自order_list表,器件号、器件名取自order_detail表,设置排序依据,设置输出去向到表results。确定后,运行查询即可。

  方法2:在命令框中直接输入SQL语句:

  SELECT Order_list.订单号, Order_list.订购日期, Order_list.总金额,;

  Order_detail.器件号, Order_detail.器件名;

  FROM 订货管理!order_list INNER JOIN 订货管理!order_detail ;

  ON Order_list.订单号 = Order_detail.订单号;

  ORDER BY Order_list.订单号, Order_list.总金额 DESC;

  INTO TABLE results.dbf

  2. 打开modi1.prg命令文件,该命令文件包含3条SQL语句,每条SQL语句中都有一个错误,请改正之(注意:在出现错误的地方直接改正,不可以改变SQL语句的结构和SQL短语的顺序)

  modi1.prg程序如下:

  &&所有器件的单价增加5元

  UPDATE order_detail1 SET 单价 WITH 单价 + 5

  &&计算每种器件的平均单价

  SELECT 器件号,AVG(单价) AS 平均价 FROM order_detail1 ORDER BY 器件号 INTO CURSOR lsb

  &&查询平均价小于500的记录

  SELECT * FROM lsb FOR 平均价 < 500

  解答:

  错误1:WITH应改为:“=”

  错误2、ORDER改为:GROUP

  错误3、FOR应改为:WHERE

[NextPage]

  三、综合应用(1小题,计30分)

  在做本题前首先确认在基础操作中已经正确地建立了order_detail表,在简单应用中已经成功地将记录追加到order_detail表。当order_detail表中的单价修改后,应该根据该表的"单价"和"数量"字段修改order_list表的总金额字段,现在有部分order_list记录的总金额字段值不正确,请编写程序挑出这些记录,并将这些记录存放到一个名为od_mod的表中(与order_list表结构相同,自己建立),然后根据order_detail表的"单价"和"数量"字段修改od_mod表的总金额字段(注意一个od_mod记录可能对应几条order_detail记录),最后od_mod表的结果要求按总金额升序排序,编写的程序最后保存为prog1.prg。

  解答:

  Prog1.prg程序代码如下:

  set talk off

  use order_detail in 1

  index on 订单号 tag xx

  set order to tag xx

  use order_list in 2

  select 2

  set relation to 订单号 into order_detail

  copy for 总金额<>a.单价*a.数量 to od_mod1

  replace all 总金额 with a.单价*a.数量

  use od_mod1

  sort on 总金额 to od_mod

  set talk on

  附:本题相关表

  2010年计算机等考二级VF上机冲刺模拟试题(2)

广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved