1、国家二级 VF机试-试卷 133及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.在考生文件夹下完成下列操作(在“成绩管理”数据库中完成): 1为“学生”表在“学号”字段上建立升序主索引,索引名为学号。 2为“学生”表的“性别”字段定义有效性规则,规则表达式为“性别”$ “男女”,出错提示信息是“性别必须是男或女“”。 3在“学生”表的“性别”和“年龄”字段之间插入一个“出生口期”字段,数据类型为“日期型”(修改表结构)。 4用 SQL的 UPDATE命令将学生“李勇”的出生日期修改为 1984年 3月 5
2、日,并将该语句粘贴在 sql a2.TXT文件中(第一行、只占一行)。(分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.1. 在考生文件夹下,有一个数据库 cadb,其中有数据库表 zxkc和 zx。 表结构如下: zxkc(产品编号,品名,需求量,进货日期) zx(品名,规格,单价,数量) 在表单向导中选取一对多表单向导创建一个表单。 要求:从父表 zxkc中选取字段产品编号和品名,从子表 zx中选取字段规格和单价,表单样式选取“阴影式”,按钮类型使用“文本按钮”,按产品编号升序排序,表单标题为“照相机”,最后将表单存放在考生文件夹中,
3、表单文件名是 form2。 2在考生文件夹下有数据库 cadb,其中有数据库表 zxkc和zx。建立单价大于等于 800,按规格升序排序的本地视图 came list,该视图按顺序包含字段产品编号、品名、规格和单价,然后使用新建立的视图查询视图中的全部信息,并将结果存入表 camera。(分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.在考生文件夹下有工资数据库 wage3,包括数据库表文件:zg(仓库号 C(4),职工号 C(4),工资 N(4)。设计一个名为 tj的菜单,菜单中有两个菜单项“统计”和“退出”。 程序运行时,单击“统计”
4、菜单项应完成下列操作;检索出工资小于或等于本仓库职工平均工资的职工信息,并将这些职工信息按照仓库号升序排序,在仓库号相同的情况下再按职工号升序存放到 emp1(emp1为自由表)文件中,该数据库表文件和 zs数据库表文件具有相同的结构。 单击“退出”菜单项,程序终止运行。 (注意:相关数据表文件存在于考生文件夹下)(分数:2.00)_国家二级 VF机试-试卷 133答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_解析:2.在考生文件夹下完成下列操作(在“成绩管理”数据库中完成): 1为“学生”表在“学号”字段上
5、建立升序主索引,索引名为学号。 2为“学生”表的“性别”字段定义有效性规则,规则表达式为“性别”$ “男女”,出错提示信息是“性别必须是男或女“”。 3在“学生”表的“性别”和“年龄”字段之间插入一个“出生口期”字段,数据类型为“日期型”(修改表结构)。 4用 SQL的 UPDATE命令将学生“李勇”的出生日期修改为 1984年 3月 5日,并将该语句粘贴在 sql a2.TXT文件中(第一行、只占一行)。(分数:2.00)_正确答案:(正确答案:1.在命令窗口输入命令: USE 学生 MODIFY STRUCTURE 打开表设计器,在“索引”选项卡的“索引名”中输入“学号”,选择索引类型为“
6、主索引”,索引表达式为“学号”。 2在“学生”表设计器的字段选项卡中,首先选中“性别”字段,然后在规则文本框中输入”性别”$”男女”,在信息文本框中输入“性别必须是男或女”,如图 2-1所示。 )解析:解析:本大题所考查的都是数据表结构的一些基本操作,包括字段索引的建立、字段的有效性规则的建立以及字段的新增,可在“字段”选项卡中完成,主索引的建立需要在“索引”选项卡中进行设置。二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.1. 在考生文件夹下,有一个数据库 cadb,其中有数据库表 zxkc和 zx。 表结构如下: zxkc(产品编号,品名,需求量
7、,进货日期) zx(品名,规格,单价,数量) 在表单向导中选取一对多表单向导创建一个表单。 要求:从父表 zxkc中选取字段产品编号和品名,从子表 zx中选取字段规格和单价,表单样式选取“阴影式”,按钮类型使用“文本按钮”,按产品编号升序排序,表单标题为“照相机”,最后将表单存放在考生文件夹中,表单文件名是 form2。 2在考生文件夹下有数据库 cadb,其中有数据库表 zxkc和zx。建立单价大于等于 800,按规格升序排序的本地视图 came list,该视图按顺序包含字段产品编号、品名、规格和单价,然后使用新建立的视图查询视图中的全部信息,并将结果存入表 camera。(分数:2.00
8、)_正确答案:(正确答案:1利用菜单命令“文件”“新建”,或从常用工具栏中单击新建图标按钮,在弹出的“新建”对话框中选择“表单”单选项,再单击“向导”图标按钮,系统弹出“向导选取”对话框,在列表框中选择“一对多表单向导”。根据向导提示,在步骤一中,选择数据表 zxkc作为父表,从“可用字段”列表框中将“产品编号”和“品名”字段添加到右边的“选定字段”列表框中,用来作为父表的可用字段,如图 4-1所示。 * 在步骤二中,为子表选定字段,操作方法与父表选取字段的方法一样,将 zx表中的“规格”和“单价”字段添加到“选定字段”列表框中。在步骤三中,系统已经默认设置好进行关联的字段:父表的“品名”和子
9、表的“品名”字段。在步骤四中,选择表单“样式”为“阴影式”,在“按钮类型”选项组中选择“文本按钮”选项。在步骤五中,将“可用宁段或索引标识”列表框中的“产品编号”字段添加到右边的“选定字段”列表框中,并选择“升序”单选项。最后在“标题”文本框中输入“照相机”为表单添加标题,单击“完成”命令按钮,在系统弹出的“另存为”对话框中,将表单以 form2文件名保存在考生文件夹下,退出表单设计向导。 2首先在命令窗口输入命令:OPEN DATABASE cadb,打开数据库。利用菜单命令或单击常用工具栏中的“新建”图标按钮,新建一个视图文件,在视图没计器中,将数据库表文件 zxkc 和 zx分别添加到视
10、图设计器中,系统自动建立两表的关联,如图 4-2所示。 * 根据题意,在“字段”选项卡中,从“可用字段”列表框中选择 zxkc产品编号、zxkc品名、zx规格和 zx单价 4个字段添加到右边的“选定字段”中,接着在“筛选”选项卡中设置查询条件,在“字段名”下拉框中选择“zx单价”字段,在“条件”下拉框中选择“=”,在“实例”文本框中输入“800“:然后在“排序依据”选项卡中设置排序字段,从“可用字段”列表框中选择“zx规格”字段添加到右边的“选定字段”列表框中,在“排序选项”中选择“升序”单选项,将视图文件以 came list名字保存在考生文件夹下。 因为视图设计器中没有“查询去向”的问题,
11、因此要将查洵结果保存在数据表中,必须利用查询设计器来完成。新建一个查询文件,将“came list视图文件添加到查询设计器中,如图 4-3所示。在查询设计器的“字段”选项卡中,单击“全部添加”命令按钮,将“可用字段”列表框中的字段全部添加到“选定字段”中,然后执行菜单命令“查询”“查询去向”,在“查询去向”对话框中单击“表”图标按钮,在“表名”文本框中输入保存查洵结果的表名 camera,单击“确定”按钮关闭对话框。 * 执行菜单命令“查询”“运行查询”,查询结果将自动保存到数据表 camera中。)解析:解析:本大题第 1小题考查的主要是利用表单向导建立一个显示关联数据表中记录的表单,其中注
12、意父表和子表的选择;第 2小题考查的主要是视图的建立及数据查询,要注意的是在视图设计中没有查询去向的功能,不能保存查询结果,必须通过查询设计器来完成。三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_解析:6.在考生文件夹下有工资数据库 wage3,包括数据库表文件:zg(仓库号 C(4),职工号 C(4),工资 N(4)。设计一个名为 tj的菜单,菜单中有两个菜单项“统计”和“退出”。 程序运行时,单击“统计”菜单项应完成下列操作;检索出工资小于或等于本仓库职工平均工资的职工信息,并将这些职工信息按照仓库号升序排序,在仓库号相同的情况下再按职工号升序存放到 e
13、mp1(emp1为自由表)文件中,该数据库表文件和 zs数据库表文件具有相同的结构。 单击“退出”菜单项,程序终止运行。 (注意:相关数据表文件存在于考生文件夹下)(分数:2.00)_正确答案:(正确答案:在命令窗口输入命令:CREATE MENU tj 系统弹出一个“新建菜单”对话框,在对话框中单击“菜单”图形按钮,进入菜单设计器环境。根据题目要求,首先输入两个主菜单名称“统计”和“退出”,接着在“统计”菜单行的“结果”下拉框中选择“过程”选项(用于编写程序),在“退出”菜单行的“结果”下拉框中选择“命令”选项。 单击“统计”菜单行中的“编辑”按钮,进入程序设计的编辑窗口,在程序编辑窗口中输
14、入如下程序段: *“统计”菜单命令的程序设计* SET TALK OFF SET SAFETY OFF OPEN DATABASE wage3 SELECT 仓库号,AVG(工资) AS avggz; FROM zg; GROUP BY 仓库号; INTO CURSOR curtable SELECT zg.仓库号,zg.职工号,zg.工资; FROM zg,curtable; WHERE zg.工资=curtable.avggz; AND zg. 仓库号=curtable.仓库号; ORDER BY zg.仓库号,zg.职工号; INTO TABLE emp1 CLOSE ALL SET S
15、AFETY ON SET TALK ON * 在“退出”菜单项的“命令”文本框中编写程序代码:SET SYSMENU TO DEFAULT。 选择菜单命令“菜单”“生成”,生成一个菜单文件 tj.mpr。关闭设计窗口,在命令窗口输入命令:DO tj.mpr,看到 Visual FoxPro的菜单栏被新建的菜单所代替,单击“退出”菜单命令将恢复系统菜单。 执行“统计”菜单命令后,系统自动生成新数据表文件 empl.dbf用来保存查询结果。)解析:解析:本大题考查的主要是利用 SQL语句的进行分组汁算查询,在本题应了解 SQL中用于求平均值的函数 AVG的使用;在菜单的设计过程中主要是注意两个菜单命令在“结果”下拉框中应选择的类型。