计算机等级考试二级VF上机题答案文档格式.docx
《计算机等级考试二级VF上机题答案文档格式.docx》由会员分享,可在线阅读,更多相关《计算机等级考试二级VF上机题答案文档格式.docx(27页珍藏版)》请在冰豆网上搜索。
3、UPDAstock_bkSET现价=8.88WHER股票代码="
600007"
4、DELEFROMstock_bkWHER股票代码="
600000"
三、综合应用(1小题,计30分)
在考生文件夹下有学生成绩数据库XUESHENG3,包括如下所示三个表文件以及相
关的索引文件:
1、XS.DBF(学生文件:
学号C8,姓名C8,性别C2,班级C5;
另有索引文件
XS.IDX,索引键:
学号)
2、CJ.DBF(成绩文件:
学号C8,课程名C20,成绩N5.1;
CJ.IDX,索引键:
3、CJB.DBF(成绩表文件:
学号C8,姓名C8,班级C5,课程名C12,成绩
N5.1)
设计一个名为XS3的菜单,菜单中有两个菜单项"
计算"
和"
退出"
。
程序运行时,单击"
菜单项应完成下列操作:
将所有选修了"
计算机基础"
的学生的"
成绩,按成绩由高到低的顺序填列到成绩表文件CJB.DBF中(事前须将文件中原有数据清空)。
单击"
菜单项,程序终止运行。
(注:
相关数据表文件存在于考生文件夹下)
结构化查询语言(SQL)中的联接查询、查询的排序、查询的去向等知识
解题思路:
在本题中要想得到所有选修了"
成绩及学生的姓名等信息,就需要用到联接查询。
因为学生的姓名、班级在表XS.DBF中,而学生的成绩在表CJ.DBF中。
而这两个表要联接起来可以通过"
学号"
字段。
有以下两种联接查询的形式:
SELECTXS.学号,姓名,班级,课程名,成绩FROMXS,CJWHEREXS.学号=CJ.学号AND课程名="
或者SELECTXS.学号,姓名,班级,课程名,成绩FROMXSLEFTJIONCJONXS.学号=CJ.学号WHERE课程名="
通过以上的联接查询便得到了所有选修"
的成绩及学生的姓名等信息。
而题中所要求按成绩的降序排序,所以应该在以上SQL语句的基础上加入:
ORDERBY成绩DESC
将查询所得到的结果放于一个数组变量AFieldsValue中,要用到INTOARRAYAFieldsValue.至此一个完整的SQL联接查询语句便形成了:
ORDERBY成绩DESCINTOARRAYAFieldsValue
清空CJB.DBF
将tableName中的资料添加到已被清空的CJB.DBF中INSERTINTOCJBFROMARRAYAFieldsValue
二、简单应用(2小题,每题20分,计40分)
1、在考生文件夹下建立数据库sc2,将考生文件夹下的自由表score2添加进sc2中。
根据score2表建立一个视图score_view,视图中包含的字段与score2表相同,但视图中只能查询到积分小于等于1500的信息。
然后利用新建立的视图查询视图中的全部信息,并将结果按积分升序存入表v2。
2、建立一个菜单filemenu,包括两个菜单项"
文件"
帮助"
,"
将激活子菜单,该子菜单包括"
打开"
、"
存为"
和"
关闭"
三个菜单项;
"
子菜单项用SETSYSMENUTODEFAULT命令返回到系统菜单,其他菜单项的功能不做要求。
第1题,本题的主要考核点是视图的建立。
在"
项目管理器"
中选择一个数据库,选择"
本地视图"
,然后选择"
新建"
按钮,打开"
视图设计器"
选择所有字段,在"
筛选"
栏内输入条件"
积分<
=1500"
,关闭并保存。
在数据库设计器中打开视图,用sorton积分tov2命令存入新表。
第2题,本题的主要考核点是菜单的建立。
新建菜单可按下列步骤:
选择"
菜单中的"
命令,在"
对话框中选择"
菜单"
,单击"
新建文件"
按钮。
新建菜单"
按钮,调出"
菜单设计器"
也可用CREATEMENU命令直接调出菜单设计器。
在菜单名称中填入"
,"
结果为子菜单,单击编辑;
在子菜单的菜单名称中输入"
结果为命令"
SETSYSMENUTODEFAULT"
第二套
在考生文件夹下完成下列操作(在"
成绩管理"
数据库中完成):
1.为"
学生"
表在"
字段上建立升序主索引,索引名为学号;
2.为"
表的"
性别"
字段定义有效性规则,规则表达式为性别$"
男女"
出错提示信息是:
"
性别必须是男或女"
3.在"
年龄"
字段之间插入一个"
出生日期"
字段,数据类型
为"
日期型"
(修改表结构);
4.用SQL的UPDATE命令将学生"
王三风"
的出生日期修改为1983年5月1日,并将该
语句粘贴在SQL2.TXT文件中(第一行、只占一行)
主索引的建立、字段有效规则的建立,表结构的更改,SQL语言的使用。
解题思路:
1.在表设计器中的索引页面建立索引。
2、建立有效性规则在表设计器中的字段选项卡。
规则"
栏中输入"
性别$"
提示信息"
栏输入"
(不要双引号)。
4.SQL语句的用法
UPDA学生SET出生日期={^1983/05/01}WHER姓名="
在考生文件夹下有仓库数据库CK3,包括如下所示两个表文件:
CK(仓库号C(4),城市C(8),面积N(4))
ZG(仓库号C(4),职工号C(4),工资N(4))
设计一个名为ZG3的菜单,菜单中有两个菜单项"
统计"
程序运行时,单击"
检索出所有职工的工资都大于1220元的职工所管理的仓库信息,将结果保存在wh1数据表(WH1为自由表)文件中,该文件的结构和CK数据表文件的结构一致,并按面积升序排序。
(注:
相关数据表文件存在于考生文件夹下)本题主要考核点:
菜单的建立、结构化查询语言(SQL)中的嵌套查询、查询结果的去向等知识。
利用菜单设计器定义两个菜单项,在菜单名称为"
的菜单项的结果列中选择"
过程"
,并通过单击"
编辑"
按钮打开一个窗中来添加"
菜单项要执行的命令。
在菜单名称为"
命令"
,并在后面的"
选项"
列中输入以下退出菜单的命令:
SETSYSMENUTODEFAULT
菜单项要执行的程序:
首先中打开数据库文件OPENDATABASECK3.DBC
下面我们分析所要用到的查询语句的实现,题面要求"
检索出所有职工的工资都大于1220的职工所管理的仓库信息"
,所以得到满足以上条件的仓库号成为解答本题的关键。
所有职工的工资都大于1220的职工所管理的仓库"
这个条件可以将其分解为同时满足以下两个条件的结果"
仓库号不存在于职工的工资小于等于1220的职工所管理的仓库号中"
并且"
仓库号存在于表ZG中"
,而以上两个条件我们可以利用SQL轻松写出来。
所以最后形成的查询语句以下:
SELECT*FROMCKWHERE仓库号NOTIN(SELECT仓库号FROMZGWHERE工资<
=1220)AND仓库号IN(SELECT仓库号FROMZG)INTOTABLEwh1.dbf.后面的INTOTABLEwh1.dbf决定了查询的结果是生成一个wh1.dbf文件。
本题还考对查询的排序和查询的去向进行了考核.可以用ORDERBYorder_Item[ASC|DESC]来让查询的结果按某一列或某几列的升序(ASC)或降序(DESC)进行排列。
而查询的去向可以通过INTOTABLEstrTableName而直接生成一个文件名为strTableName的.DBF表。
1、根据考生文件夹下的txl表和jsh表建立一个查询query2,查询出单位是"
南京大学"
的所有教师的姓名、职称、电话,要求查询去向是表,表名是query2.dbf,并执行该查询。
2、建立表单enterf,表单中有两个命令按钮,按钮的名称分别为cmdin和
cmdout,标题分别为"
进入"
第1题,本题的主要考核点是建立查询。
建立查询可以使用“文件”菜单完成,选择文件--新建--查询--新建文件,将txl和jsh添加入查询中,从字段中选择姓名、职称和电话字段,单击查询菜单下的查询去向,选择表,输入表名query2.DBF。
最后运行该查询。
第2题,本题的主要考核点是表单的建立。
可以用三种方法调用表单设计器:
在项目管理器环境下调用;
单击“文件”菜单中的“新建”,打开“新建”对话框,选择“表单”;
在命令窗口输入CREATEFORM命令。
打开表单设计器后,在表单控件工具栏上单击“命令按钮”,在表单上放置两个按钮。
分别修改其属性Name为cmdin和cmdout,Caption属性为“进入”和“退出”。
第三套
一、基本操作(共四小题,第1和2题是7分、第3和4题是8分
1、请在考生文件夹下建立一个数据库KS4。
2、将考生文件夹下的自由表STUD、COUR、SCOR加入到数据库KS4中。
3、为STUD表建立主索引,索引名和索引表达式均为学号
为COUR表建立主索引,索引名和索引表达式均为课程编号
为SCOR表建立两个普通索引,其中一个索引名和索引表达式均为学号;
另一个索引名和索引表达式均为课程编号
4、在以上建立的各个索引的基础上为三个表建立联系。
数据库的建立、将自由表添加到数据库中、主索引和普通索引的建立,为已建立索引的表建立联系。
1.建立数据库的常用方法有三种:
在项目管理器中建立数据库;
通过"
对话框建立数据库;
使用命令交互建立数据库,命令为:
CREATEDATABASE[DatabaseName|?
]
2.将自由表添加到数据库中,可以在项目管理器或数据库设计器中完成。
打开数据库设计器,在"
数据库"
菜单中或在数据库设计器上单击