1、国家二级 VF 机试-试卷 229 及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.(1)将“销售表”中的日期在 2000 年 12 月 31 日前(含 2000 年 12 月 31 日)的记录复制到一个新表“2001.dbf”中。 (2)将“销售表”中的日期(日期型字段)在 2000 年 12 月 31 日前(含 2000 年 12 月 31日)的记录物理删除。 (3)打开“商品表”,使用 BROWSE 命令浏览时, 使用“文件”菜单中的选项将“商品表”中的记录生成文件名为“商品表.htm”的 htm1
2、 格式文件。 (4)为“商品表”创建一个主索引,索引名和索引表达式均是“商品号”;为“销售表”创建一个普通索引(升序),索引名和索引表达式均是“商品号”。(分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.progl. prg 中的 SQL 语句用于对 books 表做如下操作: 为每本书的“价格”加上 1 元。 统计books 表中每个作者所著的书的价格总和。 查询“出版单位”为“经济科学出版社”的书的所有信息。现在该语句中有 3 处错误,请更正之。 (2)打开 myf 表单,表单上有一个命令按钮和一个表格,数据环境中已经添加了表 boo
3、ks。按如下要求进行修改(注意要保存所做的修改):单击表单中标题为“查询”的命令按钮控件查询 books 表中“出版单位”为“经济科学出版社”的书籍的“书名”、“作者编号”和“出版单位”;有一个表格控件,修改相关属性,使在表格中显示命令按钮“查询”的结果。(分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.对考生文件夹中的“工资管理”数据库完成如下综合应用。设计一个文件名和表单名均为 myf 的表单。表单的标题设为“工资发放额统计”。表单中有 1 个组合框、2 个文本框和 1 个命令按钮“关闭”。 运行表单时,组合框中有“部门信息”表中的“
4、部门号”可供选择,选择某个“部门号”以后,第一个文本框显示出该部门的“名称”,第二个文本框显示应该发给该部门的“工资总额”。单击“关闭”按钮关闭表单。(分数:2.00)_国家二级 VF 机试-试卷 229 答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_解析:2.(1)将“销售表”中的日期在 2000 年 12 月 31 日前(含 2000 年 12 月 31 日)的记录复制到一个新表“2001.dbf”中。 (2)将“销售表”中的日期(日期型字段)在 2000 年 12 月 31 日前(含 2000 年 12
5、 月 31日)的记录物理删除。 (3)打开“商品表”,使用 BROWSE 命令浏览时, 使用“文件”菜单中的选项将“商品表”中的记录生成文件名为“商品表.htm”的 htm1 格式文件。 (4)为“商品表”创建一个主索引,索引名和索引表达式均是“商品号”;为“销售表”创建一个普通索引(升序),索引名和索引表达式均是“商品号”。(分数:2.00)_正确答案:(正确答案:在命令窗口输入命令: SELECT*FROM 销售表 WHERE 日期=CTOD(“12/3100”)INTO TABLE 2001 系统将自动查找日期在 2000 年 12 月 31 日前的记录,并复制到一个新表 2001.db
6、f 中。 (2)在命令窗口输入两条命令: DELETE FROM 销售表 WHERE 日期=CTOD(“12/31/00”) &逻辑删除记录 PACK &物理删除记录 通过以上两条命令物理删除“销售表”中日期(日期型字段)在 2000 年 12 月 31 日前的记录。 (3)在命令窗口输入两条命令: USE 商品表 &打开商品表 BROWSE &打开表记录浏览窗口 打开表记录浏览窗口后,在“文件”菜单中选择“另存为 HTML(H)”菜单命令,如图 3-76 所示,弹出“另存为 HTML”的对话框中,系统默认的以“商品表.htm”名保存该文件,单击“确定”按钮保存文件。)解析:解析:本大题主要考
7、查了数据表中记录的查找和删除,可直接使用 SQL 的查询和删除语句来完成:浏览表记录前,一定要先打开数据表文件;建立表索引是在表设计器中完成的。二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.progl. prg 中的 SQL 语句用于对 books 表做如下操作: 为每本书的“价格”加上 1 元。 统计books 表中每个作者所著的书的价格总和。 查询“出版单位”为“经济科学出版社”的书的所有信息。现在该语句中有 3 处错误,请更正之。 (2)打开 myf 表单,表单上有一个命令按钮和一个表格,数据环境中已经添加了表 books。按如下要求进行修改
8、(注意要保存所做的修改):单击表单中标题为“查询”的命令按钮控件查询 books 表中“出版单位”为“经济科学出版社”的书籍的“书名”、“作者编号”和“出版单位”;有一个表格控件,修改相关属性,使在表格中显示命令按钮“查询”的结果。(分数:2.00)_正确答案:(正确答案:(1)在命令窗口中输入命令:MODIFY COMMAND prog1.prg,打开程序文件编辑窗口,文件中程序段如下: *文件 prog1.prg 修改前的源程序* update books set 价格 with 价格+1 select sum (价格)from books order by 作者编号 select* fr
9、om books for 出版单位=“高等教育出版社” 根据源程序提供的错误,修改后的程序段如下所示: *文件 prog1.prg 修改后的程序段* update books set 价格=价格+1 select sum (价格)from books group by 作者编号 select* from books where 出版单位=“经济科学出版社” 在命令窗口输入命令:DO prog1,运行程序。 (2)在命令窗口输入命令:MODIFY FORM myf,打开表单设计器,双击表单中的“查询”命令按钮,在其 Click 事件中编写代码如下。 *命令按钮 Command1 (查看)的 Cl
10、ick 事件代码* SELECT 书名,作者编号,出版单位 FROM books; WHERE 出版单位=“经济科学出版社”INTO CURSOR temp Thisform.Grid1.RecordSource=“temp“, * 在命令窗口输入命令:DO FORM myf,运行表单,结果如图 3-83 所示。 )解析:解析:本大题 1 小题考查的是 SQL 语句的应用,注意 ORDER BY 和 GROUP BY 之间的差别,排序一般用 ORDER BY 短语,记录分组一般使用 GROUP BY 短语。2 小题考查的表单控件属性的修改以及 SQL 语句的应用。三、综合应用题(总题数:2,分
11、数:4.00)5.综合应用题()(分数:2.00)_解析:6.对考生文件夹中的“工资管理”数据库完成如下综合应用。设计一个文件名和表单名均为 myf 的表单。表单的标题设为“工资发放额统计”。表单中有 1 个组合框、2 个文本框和 1 个命令按钮“关闭”。 运行表单时,组合框中有“部门信息”表中的“部门号”可供选择,选择某个“部门号”以后,第一个文本框显示出该部门的“名称”,第二个文本框显示应该发给该部门的“工资总额”。单击“关闭”按钮关闭表单。(分数:2.00)_正确答案:(正确答案:单击“文件”菜单中的“新建”,在类型选择框中选择“表单”,单击“新建文件”按钮,打开表单设计器。在属性窗口中
12、设置表单的 Caption 属性为“工资发放额统计”,Name 的属性值改为 myf。从“表单控件”工具栏中选择 1 个组合框,2 个文本框,1 个命令按钮放置在表单上。在属性面板中设置命令按钮的 Caption 属性为“关闭”,组合框的 RowSourceType 属性为“1-值”,RowSource 属性为“01,02,03,04,05”, Style 属性为“2-下拉列表框”。结果如图 3-81 所示。图 3-81 双击组合框,在其 Valid 事件中输入以下代码: *组合框 Combo1 的 Valid 事件代码* Select 部门名 from 部门信息 where 部门号=Tbo1
13、.value into array temp Thisform.Text1.Value=temp(1) Select sum(工资)from 工资 where 部门号=This bo1.value into array temp2 Thisform.Text2.Value=temp2(1) * 以同样的方法为“关闭”命令按钮编写 Click 事件代码:Thisform. Release。 保存表单文件为 myf. scx 到考生文件夹下。表单运行结果如图 3-82所示。 )解析:解析:本大题主要考查的是表单中组合框的设置,该控件用来显示数据的重要属性是RowsourceType 和 RowSource,在程序设计中,利用 SQL 语句在数据表中查找与选中条目相符的字段值。