2015年计算机二级VFP考试练习及答案解析(2)
在考生文件夹下有一表单文件myform.scx,其中包含"高度"标签、Text1文本框,以及"确定"命令按钮。打开该表单文件,然后在表单设计器环境下完成如下操作:
1.将标签、文本框和命令按钮三个控件设置为顶边对齐。
2.设置"确定"按钮的属性使在表单运行时按Enter键就可以直接选择该按钮。
3.将表单的标题设置为"表单操作";将表单的名称设置为myform。
4.设置"确定"按钮的Click事件代码,使得表单运行时,单击该按钮可以将表单的高度设置成在文本框中指定的值。
本题主要考核点:表单属性的设置、快捷访问键的设置、事件代码的编写。
解题思路:
1、打开表单myform,选中标签、文本框和命令按钮,选择"格式"菜单下"对齐"菜单下的"顶边对齐"。
2、将"确定"按钮的Default属性值设置为.T.。
3、将表单的Caption属性值设置为表单操作,Name属性值设置为myform。
4、设置"确定"按钮的Click事件代码:this.parent.height=val(this.parent.text1.value)。
二、简单应用(2小题,每题20分,计40分)
在考生目录下完成如下简单应用:
1.用SQL语句完成下列操作:检索客户名为"lilan"所定商品的商品名和单价,结果按单价降序存入book_temp表中。
2.首先创建数据库order_m,并向其中添加order和orderitem表。然后在数据库中创建视图viewone:利用该视图只能查询商品号为a00002的商品的订购信息。查询结果依次包含订单号、签订日期和数量三项内容。各记录按订单号升序排序,最后利用刚创建的视图查询视图中的全部信息,并将查询结果存放在表tabletwo中。
本题主要考核点:利用SQL_SELECT语句建立查询、数据库的创建、向数据库中添加表、视图的创建。
解题思路:
第1题:本题的考查点是利用SQL_SELECT语句建立查询。其命令如下:
SELECT Goods.商品名,Goods.单价 FROM goods,orderitem,order;
WHERE Orderitem.订单号=Order.订单号 AND;
Goods.商品号=Orderitem.商品号 AND Order.客户名="lilan";
ORDER BY Goods.单价 DESC INTO TABLE book_temp.dbf
第2题:创建数据库可以使用"文件"菜单完成,选择文件--新建--数据库--新建文件,在数据库设计器中依次添加order和orderitem表。再通过新建命令打开视图设计器,在"添加表或视图"对话框中添加order和orderitem表,并设置两表间的联系;在"字段"选项卡中选择订单号、签订日期和数量3个字段;切换到"筛选"选项卡,在其中进行如下设置:
字段名条件 实例
orderitem.商品号 ="a00002"
切换到"排序依据"中选择字段"order.订单号",在"排序选项"处选择"升序",最后将视图保存在viewone文件中。利用刚创建的视图viewone查询视图中的全部信息,在"添加表或视图"对话框中选择viewone视图,在字段中选择所有字段,设置查询去向为表tabletwo。
三、综合应用(1小题,计30分)
在考生文件夹下创建一个下拉式菜单mymenu.mnx,并生成菜单程序mymenu.mpr。运行该菜单程序时会在当前vfp系统菜单的末尾追加一个"考试"子菜单,如下图所示。
菜单命令"计算"和"返回"的功能都通过执行过程完成。
菜单命令"计算"的功能如下:
(1)用ALTER TABLE语句在order表中添加一个"总金额"字段,该字段为数值型,宽度为7,小数位数为2。
(2)根据orderitem表和goods表中的相关数据计算各订单的总金额(一个订单的总金额等于它所包含的各商品的金额之和,每种商品的金额等于数量乘以单价),并填入刚才建立的字段中。
菜单命令"返回"的功能是恢复标准的系统菜单。
菜单程序生成后,运行菜单程序并依次执行"计算"和"返回"菜单命令。
本题主要考核点:创建菜单。
解题思路:
1、建立菜单可以使用"文件"菜单完成,选择文件--新建--菜单--新建文件打开菜单设计器。打开"显示"菜单下的"常规选项"对话框,在"位置"处选择追加,则新建立的子菜单会在当前vfp系统菜单后显示。
2、在菜单名称中填入"考试",结果为子菜单,单击创建;在子菜单的菜单名称中输入"计算",结果为过程。在过程中输入下列命令:
ALTER TABLE order ADD COLUMN 总金额 N(7,2)
CLOSE DATA
USE Order
GO TOP
DO WHILE NOT EOF()
SELECT sum(Orderitem.数量*Goods.单价) FROM orderitem,goods;
WHERE Orderitem.商品号=Goods.商品号 AND orderitem.订单号=Order.订单号;
GROUP BY Orderitem.订单号 INTO ARRAY A
REPLACE 总金额 WITH A[1]
SKIP
ENDDO
在菜单名称中填入"返回",结果为过程,在过程中输入此命令:SET SYSMENU TO DEFAULT。
3、最后保存菜单mymenu.mnx,并生成菜单程序mymenu.mpr,且运行菜单程序并依次执行"计算"和"返回"菜单命令。