1、计算机二级(VF)上机考试 14 及答案解析(总分:-3.00,做题时间:90 分钟)1.基本操作题(共 4 小题,第 1 和 2 题是 7 分、第 3 和 4 题是 8 分) (1)将数据库 tyw 添加到项目 my中。 (2)对数据库 tyw 下的表“出勤“,使用视图向导建立视图 shitu,要求显示出表“出勤“中的记录“姓名“,“出勤次数“和“迟到次数“。并按“姓名“排序(升序)。 (3)为表“员工“的字段“工资“设置完整性约束,要求“工资=0“,否则提示信息“工资必须大于 0“。 (4)设置表“员工“的字段“工资“的默认值为“1000“。(分数:-1.00)_2.简单应用题(共 2 小
2、题,每题 20 分,计 40 分) (1)使用“一对多表单向导“生成一个名为 sell 的表单。要求从父表 DE 中选择所有字段,从子表 PT 表中选择所有字段,使用“部门号“建立两表之间的关系,样式为“阴影式“;按钮类型为“图片按钮“;排序字段为部门编号(升序);表单标题为“数据维护“。 (2)在考生文件夹下打开命令文件 ASP.PRG,该命令文件用来查询各部门的分年度的“部门编号“、“部门名称“、“年度“、“全年销售额“、“全年利润“和“利润率“(全年利润全年销售额),查询结果先按“年度“升序、再按“利润率“降序排序,并存储到 Li 表中。 注意,程序在第 5 行、第 6 行、第 8 行和
3、第 9 行有错误,请直接在错误处修改。修改时,不可改变 SQL 语句的结构和短语的顺序,不允许增加或合并行。(分数:-1.00)_3.综合应用题(1 小题,计 30 分) 在考生文件夹下有学生管理数据库 books,数据库中有 score 表(学号、物理、高数、英语和学分查询表结构),其中前 4 项已有数据。 请编写符合下列要求的程序并运行程序: 设计一个名为 myform 的表单,表单中有两个命令按钮,按钮的名称分别为 cmdyes 和 cmdno,标题分别为“计算“和“关闭“。程序运行时,单击“计算“按钮应完成下列操作: 1)计算每一个学生的总学分并存入对应的学分字段。学分的计算方法是:物
4、理 60 分以上 (包括 60 分)2 学分,否则 0 分;高数 60分以上(包括 60 分)3 学分,否则 0 分;英语 60 分以上(包括 60 分)4 学分,否则 0 分。 2)根据上面的计算结果,生成一个新的表 xf(要求表结构的字段类型与 score 表对应字段的类型一致),并且按学分升序排序,如果学分相等,则按学号降序排序。单击“退出“菜单项,程序终止运行。 (分数:-1.00)_计算机二级(VF)上机考试 14 答案解析(总分:-3.00,做题时间:90 分钟)1.基本操作题(共 4 小题,第 1 和 2 题是 7 分、第 3 和 4 题是 8 分) (1)将数据库 tyw 添加
5、到项目 my中。 (2)对数据库 tyw 下的表“出勤“,使用视图向导建立视图 shitu,要求显示出表“出勤“中的记录“姓名“,“出勤次数“和“迟到次数“。并按“姓名“排序(升序)。 (3)为表“员工“的字段“工资“设置完整性约束,要求“工资=0“,否则提示信息“工资必须大于 0“。 (4)设置表“员工“的字段“工资“的默认值为“1000“。(分数:-1.00)_正确答案:((1)从菜单栏里单击“文件“并选择“打开“,或直接单击工具栏上的“打开“图标,在弹出的对话框中选择要打开的项目文件 my.pjx。在项目管理器 my 中,首先在“数据“选项卡中选择“数据库“,然后单击选项卡右边的“添加“
6、命令按钮,在系统弹出的“打开“对话框中,将考生文件夹中的数据库 tyw 添加到项目管理器中,单击“确定“按钮。 (2)在“数据“选项卡中,依次展开“数据库“-“tyw“,选中 tyw 分支下的“本地视图“,单击项目管理器右边的“新建“命令按钮,在弹出的“新建本地视图“对话框中,单击“新建视图“图标按钮,打开视图设计器,将“出勤“数据表添加到视图设计器中。根据题意,在视图设计器的“字段“选项卡中,将“可用字段“列表框中的字段全部添加到右边的“选定字段“列表框中,在视图设计器的“排序依据“选项卡中,将“选定字段“列表框中的字段“姓名“添加到右边的“排序条件“列表框中,在“排序选项“中选择“升序“,
7、完成视图设计,将视图以 shitu 保存在考生文件夹下。 (3)在项目管理器中,选中“员工“数据表,同时单击右边的“修改“命令按钮,打开表设计器,选中“工资“字段,然后在“规则“文本框中输入“工资=0“,在“信息“文本框中输入“工资必须大于 0“。 (4)打开“员工“表设计器,在“字段“选项卡中选中“工资“字段,在字段有效性“默认值“文本框中输入“1000“为该字段设置默认值。)解析:本大题主要考查数据库的添加、视图的建立以及有效性规则的建立。数据库添加可以通过项目管理器中的命令按钮,打开相应的设计器直接管理。字段的有效性规则建立可在“字段“选项卡中完成。视图的建立是在项目管理器中“数据“选项
8、卡里完成,且视图文件在磁盘中是找不到的,直接保存在数据库中。 2.简单应用题(共 2 小题,每题 20 分,计 40 分) (1)使用“一对多表单向导“生成一个名为 sell 的表单。要求从父表 DE 中选择所有字段,从子表 PT 表中选择所有字段,使用“部门号“建立两表之间的关系,样式为“阴影式“;按钮类型为“图片按钮“;排序字段为部门编号(升序);表单标题为“数据维护“。 (2)在考生文件夹下打开命令文件 ASP.PRG,该命令文件用来查询各部门的分年度的“部门编号“、“部门名称“、“年度“、“全年销售额“、“全年利润“和“利润率“(全年利润全年销售额),查询结果先按“年度“升序、再按“利
9、润率“降序排序,并存储到 Li 表中。 注意,程序在第 5 行、第 6 行、第 8 行和第 9 行有错误,请直接在错误处修改。修改时,不可改变 SQL 语句的结构和短语的顺序,不允许增加或合并行。(分数:-1.00)_正确答案:((1)启动 Visual FoxPro,在“工具“菜单选择“向导“-“表单“菜单命令,出现“向导选取“对话框,根据题意数据源是多个表,因此选定“一对多表单向导“。单击“确定“。 步骤一:在弹出的对话框中“数据库和表“选项选择父表 DE,并把全部的“可用字段“选为“选定字段“。 步骤二:选择子表 PT,并把全部的“可用字段“选为“选定字段“。 步骤三:系统自动以“部门编
10、号“建立两表之间的关系。 步骤四:表单样式选择为“阴影式“,按钮类型选择“图片按钮“。 步骤五:在“排序次序“中选择“部门编号“,并选择升序排序。 步骤六:把表单标题改为“数据维护“,可以在单击“完成“之前单击“预览“按钮来预览生成的表单,最后单击“完成“按钮。 将表单以文件名为 sell 保存在考生文件夹里。表单运行结果如图所示, )解析:本大题 1 小题考查的是依据表单向导生成联系多表的表单内容,利用向导时应注意父表和子表的选择;2 小题中考查的是 SQL 语句的应用,注意 ORDER BY 和 GROUP BY 之间的差别。 3.综合应用题(1 小题,计 30 分) 在考生文件夹下有学生
11、管理数据库 books,数据库中有 score 表(学号、物理、高数、英语和学分查询表结构),其中前 4 项已有数据。 请编写符合下列要求的程序并运行程序: 设计一个名为 myform 的表单,表单中有两个命令按钮,按钮的名称分别为 cmdyes 和 cmdno,标题分别为“计算“和“关闭“。程序运行时,单击“计算“按钮应完成下列操作: 1)计算每一个学生的总学分并存入对应的学分字段。学分的计算方法是:物理 60 分以上 (包括 60 分)2 学分,否则 0 分;高数 60分以上(包括 60 分)3 学分,否则 0 分;英语 60 分以上(包括 60 分)4 学分,否则 0 分。 2)根据上面
12、的计算结果,生成一个新的表 xf(要求表结构的字段类型与 score 表对应字段的类型一致),并且按学分升序排序,如果学分相等,则按学号降序排序。单击“退出“菜单项,程序终止运行。 (分数:-1.00)_正确答案:(在命令窗口输入命令:CREATE FORM myform,打开表单设计器;单击表单控件工具栏上的“命令按钮“控件图标,向表单添加两个命令按钮,选中第一个命令按钮(command1),在属性对话框中将命令按钮的 Name 属性值修改为“cmdyes“,将 Caption 属性值修改为“计算“,如图 7-4 所示。以同样的方法,将第二个命令按钮(command2)的 Name 属性值修
13、改为“cmdno“,将 Caption 属性值修改为“关闭“。 8 双击命令按钮 cmdyes(计算),在 Click 事件代码中编写如下程序段: *“计算“命令按钮的 Click事件代码* SET TALK OFF USE score REPLACE ALL 学分 WITH 0 GO TOP DO WHILE .NOT. EOF() IF 物理=60 THEN REPLACE 学分 WITH 学分+2 ENDIF IF 高数=60 THEN REPLACE 学分 WITH 学分+3 ENDIF IF 英语=60 THEN REPLACE 学分 WITH 学分+4 ENDIF SKIP END
14、DO SORT ON 学分,学号/d TO xf SET TALK ON * 双击命令按钮 cmdno(关闭),在Click 事件代码中编写如下程序段: *“关闭“命令按钮的 Click 事件代码* ThisForm.Release * 保存表单,在命令窗口输入命令:DO FORM myform。在运行的表单界面中单击“计算“命令按钮,系统将计算结果自动保存到新表 xf 中。 )解析:本大题考查的主要是通过对表单控件编写事件代码,来完成数据的查询操作,一般来说命令按钮的单击事件代码是存放在 Click 事件中,控件属性修改可以在属性对话框中完成,对于程序设计部分,可以通过 Do WhileEnddo 循环来依次判断数据表中的每条记录,然后通过条件语句进行分类统计。