1、国家二级 VF机试-试卷 141及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.注意:基本操作题为 4道 SQL题,请将每道题的 SQL命令粘贴到“resuittxt”文件中,每条命令占一行,第 1道题的命令是第 1行,第 2道题的命令是第 2行,依此类推;如果某道题没有做,相应行为空。(1)利用 SQL的 SELECT命令将表“通讯录dbf”复制到表“通讯录_bkdbt”中。 (2)利用 SQL的INSERT命令插入记录(“王五“,“123654987“,“海南三亚“,“)到“通讯录_bkdbf”表中。
2、 (3)利用SQL的 UPDATE命令将“通讯录_bkdbf”表中“电话”“888999444”改为“999888111”。 (4)利用 SQL的 DELETE命令删除“通讯录_bkdbf“表中“Email”为空的记录。(分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.(1)在“zhibian”数据库中根据“zhibian”表中的标准,统计计算“yuangong”表中的“加班费”,并将结果写入“yuangong”表中的“加班费”字段。 (2)建立视图“view1”,包括“职工编码”“姓名”和“夜值班天数”等字段,内容是夜值班天数在 3天以
3、上的员工。建立表单“Form1”,在表单上显示视图“view1”的内容。(分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.建立一个文件名和表单名均为 myform的表单,表单中包括一个列表框(List1)和两个命令按钮(Command1和 Command2),Command1 和 Command2的标题分别为“计算”和“退出”。 列表框(List1)中应显示组号,通过 RowSource和 RowSourceType属性手工指定列表框的显示条目为“01”、“02”、“03”、“04”(注意:不要使用命令指定这两个属性,否则将不能得分)。
4、为“计算”命令按钮编写程序。程序的功能是:表单运行时,根据列表框中选定的“组号”,将“评分表”中该组歌手(“歌手编号”字段的左边两位表示了该歌手所在的组号)的所有记录存入自由表 twodbf 中,twodbf 的表结构与“评分表”相同,表中的记录先按“歌手编号”降序、再按“分数”升序排列。 运行表单,在列表框中指定组号“01”,并且单击“计算”命令按钮。注意:结果 two表文件中只能且必须包含“01”组歌手的评分信息。(分数:2.00)_国家二级 VF机试-试卷 141答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.0
5、0)_解析:2.注意:基本操作题为 4道 SQL题,请将每道题的 SQL命令粘贴到“resuittxt”文件中,每条命令占一行,第 1道题的命令是第 1行,第 2道题的命令是第 2行,依此类推;如果某道题没有做,相应行为空。(1)利用 SQL的 SELECT命令将表“通讯录dbf”复制到表“通讯录_bkdbt”中。 (2)利用 SQL的INSERT命令插入记录(“王五“,“123654987“,“海南三亚“,“)到“通讯录_bkdbf”表中。 (3)利用SQL的 UPDATE命令将“通讯录_bkdbf”表中“电话”“888999444”改为“999888111”。 (4)利用 SQL的 DEL
6、ETE命令删除“通讯录_bkdbf“表中“Email”为空的记录。(分数:2.00)_正确答案:(正确答案:保存在“resulttXt”文件中的 4条语句分别为: (1)SELECT*INTO TABLE 通讯录_bk FROM 通讯录 (2)INSERT INTO 通讯录_bk VALUES(“王五“,“123654987“,“海南三亚“,“) (3)UPDATE通讯录_bk SET 电话=“999888111“WHERE 电话=“888999444“ (4)DELETE FROM 通讯录_bk WHERE EMPTY(Email)解析:二、简单应用题(总题数:2,分数:4.00)3.简单应
7、用题()(分数:2.00)_解析:4.(1)在“zhibian”数据库中根据“zhibian”表中的标准,统计计算“yuangong”表中的“加班费”,并将结果写入“yuangong”表中的“加班费”字段。 (2)建立视图“view1”,包括“职工编码”“姓名”和“夜值班天数”等字段,内容是夜值班天数在 3天以上的员工。建立表单“Form1”,在表单上显示视图“view1”的内容。(分数:2.00)_正确答案:(正确答案:(1)在命令窗口输入如下代码: SELECT 每天加班费 FROM zhibian WHERE值班时间=“夜”INTO ARRAY a1 SELECT 每天加班费 FROM
8、zhibian WHERE值班时间=“昼”INTO ARRAY a2 UPDATE yuangong SET加班费=yuangong夜值班天数*a1(1,1)+yuangong昼值班天数*a2(1,1) (2)选择【文件】【打开】,在列表框中选择“数据库”,打开“图书借阅”数据库,然后选择【文件】【新建】选择“视图”,然后将“yuangong”表添加到视图设计中。 在“字段”选项卡中,将“可用字段”列表框中的题目要求的字段添加到“选定字段”中。 在“筛选”选项卡中,在“字段名”选择“yuangong 夜班值班天数”,“条件”选择为“”,在“实例”中填入“3”。 保存视图,然后在命令窗口输入 C
9、REATE FORM form1,新建一个表单,然后单击右键选群数据环境,选择“视图”,将“view1”添加到数据环境设计器中,然后将“view1”拖入表单中。 保存表单。)解析:三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_解析:6.建立一个文件名和表单名均为 myform的表单,表单中包括一个列表框(List1)和两个命令按钮(Command1和 Command2),Command1 和 Command2的标题分别为“计算”和“退出”。 列表框(List1)中应显示组号,通过 RowSource和 RowSourceType属性手工指定列表框的显示条目为
10、“01”、“02”、“03”、“04”(注意:不要使用命令指定这两个属性,否则将不能得分)。 为“计算”命令按钮编写程序。程序的功能是:表单运行时,根据列表框中选定的“组号”,将“评分表”中该组歌手(“歌手编号”字段的左边两位表示了该歌手所在的组号)的所有记录存入自由表 twodbf 中,twodbf 的表结构与“评分表”相同,表中的记录先按“歌手编号”降序、再按“分数”升序排列。 运行表单,在列表框中指定组号“01”,并且单击“计算”命令按钮。注意:结果 two表文件中只能且必须包含“01”组歌手的评分信息。(分数:2.00)_正确答案:(正确答案:步骤 1:在命令窗口执行命令: CREAT
11、E FORMmyform ,打开表单设计器新建表单。步骤 2:从“表单控件”工具栏中依次向表单添加一个列表框和两个命令按钮控件。在“属性”面板的下拉框中选择表单对象,在“全部”选项卡中修改对象属性值,见表 2-13。 )解析:解析:本大题考查了表单及控件的常用属性和方法的设置;SQL 排序查询。 本题关键是怎样获取列表框所选条目的值,这可以通过列表框的 Value属性取得,Value 值等于当前列表框中被选中的条目。 另外,可以通过表框的 RowSourceType和 RowSource属性指定列表框的数据源类型和数据源;通过字符串截取函数从“歌手编号”字段中得到歌手的组号。 SQL 排序查询中,用来排序的短语为 ORDER BY,降序的关键字为 DESC,默认的排序方式为升序方式(ASC),根据多个字段排序时,需要在各字段之间加逗号隔开。