2011年9月计算机国2VFP考试新题
第1套
去向,选择表,输入表名ss,最后将查询保存在qq.qpr文件中,并运行该查询。
第2题:SQL命令为:SELECT 会员号,姓名,年龄 FROM Customer WHERE 年龄<=30 order by 年龄
DESC TO FILE cut_ab.txt,然后将此命令保存在cmd_ab.prg文件中。 一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分)
三、综合应用(1小题,计30分) 在考生目录下完成下列操作(在"成绩管理"数据库中完成):
在考生文件夹下,完成如下综合应用(所有控件的属性必须在表单设计器的属性窗口中设置): 1.为"学生"表在"学号"字段上建立升序主索引,索引名和索引表达式为学号;
设计一个名称为myform的表单(文件名和表单名均为myform),其中有一个标签Lable1(日期)、 2.为"学生"表的"性别"字段定义有效性规则,规则表达式为性别$"男女"出错提示
一个文本框Text1和两个命令按钮command1("查询")和command2("退出"),如下图所示:

信息是:"性别必须是男或女";
3.在"学生"表的"性别"和"年龄"字段之间插入一个"出生日期"字段,数据类型为"日期型"(修改表结构);
4.用SQL的UPDATE命令将学生"王三风"的出生日期修改为1983年5月1日,并将该语句粘贴在SQL2.TXT文件中(第一行、只占一行)。 二、简单应用(2小题,每题20分,计40分)
1.用SQL语句查询至少有三门的课程成绩在70分以上(包括70分)的学生姓名,并将结果存入表文件results.dbf,然后将该SQL语句保存在SQL.TXT文件中(只占一
然后在表单设计器环境下进行如下操作: 行);
1.将表单的标题设置为"综合应用"。 2.modi.prg程序的功能是:先为"学生"表增加一个"平均成绩"字段,数据类型为
2.将文本框的初始值设置为表达式date()。 N(6,2);然后根据"选课"表统计每个学生的平均成绩,并写入新添加的字段。该程序有
3.设置"查询"命令按钮的Click的事件代码,其功能是:根据文本框Text1中的输入日期,查询三处错误,请改正之,使程序能正确运行(在指定处修改,不允许增加或删除程序行)。
本题的主要考核点:查询语句的建立、修改SQL语句和修改程序语句等。
解题思路:
1、编写SQL语句如下:select 姓名 from 学生 join 选课 on 学生.学号=选课.学
号 where 成绩>=70 group by 姓名 having count (课程号)>=3 INTO TABLE
results.dbf。
2、打开modi.prg,修改其中三处错误为:
第一处错误修改为:ALTE TABLE 学生 ADD 平均成绩 N(6,2);
第二处错误修改为:DO WHILE .NOT. EOF();
第三处错误修改为:REPLACE 平均成绩 WITH cj[1]。
三、综合应用(1小题,计30分)
在考生文件夹下,完成如下综合应用:
1.根据"成绩管理"数据库中的"课程"、"选课"和"学生"三个表建立一个名为
view_grade的视图,该视图包含学号、姓名、课程名称和成绩四个字段,并要求先按
学号升序排序、在学号相同情况下按课程名称降序排序;
2.建立一个表单grade_list(控件名和文件名),添加一个表格控件,该表格控件的
数据源是前面建立的视图view_grade(直接使用拖拽的方法添加该表格);然后在表格
控件下面添加一个命令按钮(名称为Command1),该命令按钮的标题为"退出",要求
单击按钮时关闭表单。
注意:完成表单设计后要运行表单的所有功能。
解题思路:
1、打开"成绩管理"数据库,新建"本地视图",添加"课程"、"选课"和"学生"三个
表到视图中,然后选择题面要求的字段,在"排序依据"中选择按"学号"升序,"课程名
称"降序排序。以文件名view_grade保存该视图。
2、单击"文件"菜单中的"新建",打开"新建"对话框,选择"表单"或在命令窗口输入CREATE FORM命令。表单的Name属性为grade_list;在表单空白处右击鼠标,
选择"数据环境",在数据环境中添加视图"view_grade",将上题设计的视图直接拖拽到
表单中;在表单控件工具栏上单击"命令按钮",添加一个按钮,修改其Name属性为
"Command1",Caption属性为"退出",添加此按钮的Chick事件为"ThisForm.release"。
最后将表单保存为grade_list并运行该表单。
第2套
一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分) 在考生文件夹下,打开Ecommerce数据库,完成如下操作:
1.打开Ecommerce数据库,并将考生文件夹下的自由表OrderItem添加到该数据库。
2.为OrderItem表创建一个主索引,索引名为PK,索引表达式为"会员号+商品号";再为OrderItem创建两个普通索引(升序),一个的索引名和索引表达式均是"会员号";另一个的索引名和索引表达式均是"商品号"。
3.通过"会员号"字段建立客户表Customer和订单表OrderItem之间的永久联系(注意不要建立多余的联系)。
4.为以上建立的联系设置参照完整性约束:更新规则为"级联";删除规则为"限制";插入规则为"限制"。
二、简单应用(2小题,每题20分,计40分) 在考生文件夹下完成如下简单应用:
1.建立查询qq,查询会员的会员号(来自Customer表)、姓名(来自Customer表)、会员所购买的商品名(来自article表)、单价(来自OrderItem表)、数量(来自OrderItem表)和金额(OrderItem.单价 * OrderItem.数量),结果不要进行排序,查询去向是表ss。查询保存为qq.qpr,并运行该查询。
2.使用SQL命令查询小于30岁(含30岁)的会员的信息(来自表Customer),列出会员号、姓名和年龄,查询结果按年龄降序排序存入文本文件cut_ab.txt中,SQL命令存入命令文件cmd_ab.prg。 解题思路:
第1题:建立查询可以使用"文件"菜单完成,选择文件--新建--查询--新建文件,将"Customer"表,"article"表,"OrderItem"表添加到查询设计器中(将"article"表和"OrderItem"表通过"商品号"字段建立关联,将"Customer"表和"OrderItem"表通过"会员号"字段建立关联),在"字段"选项卡选择题面中要求的会员号、姓名、商品名、单价、数量字段,金额需要通过计算得到,在函数和表达式处输入"OrderItem.单价 * OrderItem.数量 as 金额",单击"添加"按钮;单击查询菜单下的查询
各会员在指定日期后(大于等于指定日期)签订的各商品总金额,查询结果的字段包括"会员号"(来自Customer表)、"姓名"和"总金额"三项,其中"总金额"为各商品的数量(来自Orderitem表)乘以单价(来自Article表)的总和;查询结果的各记录按总金额升序排序;查询结果存放到表dbfa.dbf中。 4.设置"退出"命令按钮的Click的事件代码,其功能是:关闭并释放表单。 最后运行表单,在文本框中输入2003/03/08,并单击"查询"命令按钮。 本题主要考核点:表单文件的创建、控件的属性的修改、SQL语句运用、表单的退出。 解题思路: ①在命令窗口输入命令:CREATE FORM myform,打开表单设计器窗口。 ②在表单上添加标签、文本框和命令按钮,并进行适当的布置和大小调整。 ③设置标签、"退出"命令按钮、表单的Caption属性值以及表单的Name属性值。将"查询"命令按钮的Caption属性值设置为"查询(\<R)"。 ④将文本框的Value属性值设置为"=date()"。 ⑤设置"查询"按钮的Click事件代码: SELECT Customer.会员号,Customer.姓名,sum(Orderitem.数量*Article.单价) as 总金额; FROM customer,orderitem,article; WHERE Article.商品号=Orderitem.商品号 AND Customer.会员号=Orderitem.会员号 AND; Orderitem.日期>=ctod(thisform.Text1.Text); ORDER BY 3 GROUP BY Customer.会员号; INTO TABLE dbfa.dbf ⑥设置"退出"按钮的Click事件代码: THISFORM.RELEASE ⑦保存表单并运行,在文本框中输入03/08/2003,并单击"查询"命令按钮。 第三套
一、基本操作题(共4小题,第1和2题是7分、第3和4题是8分) 在考生文件夹下有一表单文件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中。
第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个字段;切换到"筛选"选项卡,在其中进行如下设置:


