1、国家二级 VF 机试(操作题)-试卷 180 及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹下完成如下操作:(1)使用 SQL INSERT 语句在 orders 表中添加一条记录,其中订单号为“0050“、客户号为“061002“、签订日期为 2010 年 10 月 10 日。然后将该语句保存在命令文件 sone.prg 中。(2)使用 SQL UPDATE 语句将 orders 表中订单号为“0025“的订单的签订日期改为 2010 年 10 月 10 日。然后将语句保存在命令文件 stwo.prg 中。(3)使用 SQL A
2、LTER 语句将 orders 表添加一个“金额“字段(货币类型)。然后将该语句保存在命令文件 sthree.prg 中。(4)使用 SQL DELETE 语句从 orderitems 表中删除订单号为“0032“且商品号为“C1003“的记录。然后将该语句保存在命令文件 sfour.prg 中。(分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.(1)使用 SELECT 语句查询 2008 年 2 月份没有订单的客户,查询结果依次包含客户号、姓名、性别和联系电话四项内容,各记录按客户号降序排序,查询结果存放在表 tableone 中。最后将该语句保存在命令文件 sfive.p
3、rg 中。注:customers 是客户表,orders 是订单表。(2)首先创建数据库 goods_m,并向其中添加 goods 表。然后再数据库中创建视图 viewone:利用该视图只能查询单价大于等于 2000 且库存量小于等于 2、或者单价小于 2000 且库存量小于等于 5 的商品信息,查询结果依次包含商品号、商品名、单价和库存量四项内容,各记录按单价降序排序、单价相同按库存量升序排序。最后利用该视图查询视图中的全部信息,并将查询结果存放在表 tabletwo 中。(分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下创建一个顶层表单 myform.scx
4、(表单的标题为“考试“),然后创建并在表单中添加菜单(菜单的名称为 mymenu.mnx,菜单程序的名称为 mymenu.mpr)。效果如小图所示。 (分数:2.00)_国家二级 VF 机试(操作题)-试卷 180 答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹下完成如下操作:(1)使用 SQL INSERT 语句在 orders 表中添加一条记录,其中订单号为“0050“、客户号为“061002“、签订日期为 2010 年 10 月 10 日。然后将该语句保存在命令文件 sone.prg 中。(2)使用 SQL UPDATE 语句
5、将 orders 表中订单号为“0025“的订单的签订日期改为 2010 年 10 月 10 日。然后将语句保存在命令文件 stwo.prg 中。(3)使用 SQL ALTER 语句将 orders 表添加一个“金额“字段(货币类型)。然后将该语句保存在命令文件 sthree.prg 中。(4)使用 SQL DELETE 语句从 orderitems 表中删除订单号为“0032“且商品号为“C1003“的记录。然后将该语句保存在命令文件 sfour.prg 中。(分数:2.00)_正确答案:(正确答案:【操作步骤】 (1)在命令窗口输入“insert into orders values(“0
6、050“,“061002“,2010-10-10)“,然后按回车执行。通过“新建“对话框新建一个程序文件,将上述命令复制到此程序文件中,然后保存程序并命名为“sone.prg“ (2)在命令窗口输入“update orders set 签订日期=2010-10-10 where 订单号=“0025“,然后按回车执行。通过“新建“对话框新建一个程序文件,将上述命令复制到此程序文件中,然后保存程序并命名为“stwo.prg“。 (3)在命令窗口输入“alter table orders add 金额 Y“,然后按回车执行。通过“新建“对话框新建一个程序文件,将上述命令复制到此程序文件中,然后保存程
7、序并命名为“sthree.prg“。 (4)在命令窗口输入“delete from orderitems where 订单号=“0032“ and 商品号=“C1003“,然后按回车执行。通过“新建“对话框新建一个程序文件,将上述命令复制到此程序文件中,然后保存程序并命名为“sfour.prg“。)解析:二、简单应用题(总题数:1,分数:2.00)2.(1)使用 SELECT 语句查询 2008 年 2 月份没有订单的客户,查询结果依次包含客户号、姓名、性别和联系电话四项内容,各记录按客户号降序排序,查询结果存放在表 tableone 中。最后将该语句保存在命令文件 sfive.prg 中。注
8、:customers 是客户表,orders 是订单表。(2)首先创建数据库 goods_m,并向其中添加 goods 表。然后再数据库中创建视图 viewone:利用该视图只能查询单价大于等于 2000 且库存量小于等于 2、或者单价小于 2000 且库存量小于等于 5 的商品信息,查询结果依次包含商品号、商品名、单价和库存量四项内容,各记录按单价降序排序、单价相同按库存量升序排序。最后利用该视图查询视图中的全部信息,并将查询结果存放在表 tabletwo 中。(分数:2.00)_正确答案:(正确答案:【操作步骤】 (1)打开 Visual FoxPro,在命令窗口输入命令并按回车执行:se
9、lect 客户号,姓名,性别,联系电话 from customers where not exists (select * from orders where year(签订日期)=2008 and month(签订日期)=2 and 客户号=customers.客户号) order by 客户号 desc into table tableone。 通过“新建“对话框新建一个程序,将上述语句复制到此程序文件中并保存为sfive,然后运行程序。 (2)步骤 1:通过“新建“对话框新建一个数据库 goods_m,在数据库空白处单击鼠标右键,选择“添加表“命令,将“goods“表添加到数据库中。 步
10、骤 2:在数据库空白处单击鼠标右键,选择“新建本地试图“命令,将 goods 表添加到视图设计器中。在视图设计器的“字段“选项卡下,将商品号、商品名、单价和库存量四个字段添加到选定字段中;在“筛选“选项卡下,字段名选“goods.单价“,条件为“=“,实例输入“2000“,逻辑选择“and“,另起一行,字段设为“goods.库存量“,条件为“=“,实例输入“2“,逻辑选择“or“,另起一行,字段设为“goods.单价“,条件为“,实例输入“2000“,逻辑选择“and“,另起一行,字段设为“goods.库存量“,条件为“=“,实例输入“5“;在“排序依据“选项卡下,设置先按单价降序排列,再按库
11、存量升序排列。 步骤 3:保存视图为 viewone。 步骤 4:新建一个查询,将试图 viewone 添加到视图设计器中,将 viewone 的所有字段添加到选定字段中,然后单击菜单栏“查询“-“查询去向“命令,设置查询去向为表,输入文件名“tabletwo“。)解析:三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下创建一个顶层表单 myform.scx(表单的标题为“考试“),然后创建并在表单中添加菜单(菜单的名称为 mymenu.mnx,菜单程序的名称为 mymenu.mpr)。效果如小图所示。 (分数:2.00)_正确答案:(正确答案:【操作步骤】 步骤 1:新建一个表单
12、,将表单的 Caption 修改为“考试“,ShowWindow 属性修改为“2作为顶层表单“。 步骤 2:双击表单空白处,编写表单的 Init 如下。 DO mymenu.mpr WITH THIS,“myform“ 步骤 3:新建一个菜单,选择“显示“菜单下的“常规选项“命令,在弹出的“常规选项“对话框中勾选“顶层表单“。 步骤 4:输入菜单项“统计“和“退出“,结果均选择“过程“,然后单击两个菜单项后面的“创建“按钮,分别编写代码如下。 *“统计“菜单项中的命令代码* SELECT year(出生日期) as 年份, count(*) as 人数; FROM customers; GROUP BY 1; ORDER BY 1; into table tablethree * *“退出“菜单项中的命令代码* myform.Release * 步骤 5:保存菜单并命名为“mymenu“,然后单击菜单栏“菜单“-“生成“命令,生成可执行文件。 步骤 6:保存表单并命名为“myform“,然后运行。)解析: