1、国家二级 VF机试-试卷 8及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.(1)利用 SQL的 SELECT命令将表“studentdbf”复制到“student bkdbf”表中。 (2)利用 SQL的INSERT命令插入记录(“20080002“,“张三“,“男“,18)到“student_bkdbf”表中。 (3)利用 SQL的UPDATE命令将“student_bkdbf”表中“学号”为“20080001”的学生“姓名”改为“李四”。 (4)利用 SQL的 DELETE命令删除“student_
2、bkdbf”表中“学号”为“20080001”的学生。(分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.(1)在数据库“school”下创建一个名称为“view1”的视图,该视图的 SELECT语句用于查询“工资”表的部门编号、职员编号、姓名、工资、补贴、奖励、保险和实发工资,其中实发工资由工资、补贴和奖励三项相加,然后再减去保险得到,结果按“部门编号”降序排序,最后将定义视图的命令代码存放到命令文件“view1prg”中,并执行该程序。 (2)设计一个名称为“bd2”的表单,表单以表格方式显示“school”数据库中“student”表
3、的记录。在该表单的右下方有一个命令按钮,名称为 Command1,标题为“关闭”,单击该按钮退出表单。(分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.请编写名称为 change_c的程序并执行;该程序实现下面的功能: 将雇员工资表 salarys进行备份,备份文件名为 bak_salarysdbf;利用“人事部”向“财务部”提供的雇员工资调整表 c_salary1的“工资”,对 salarys表的“工资”进行调整(请注意:按“雇员号”相同进行调整,并且只是部分雇员的工资进行了调整,其他雇员的工资不动)。 设计一个名称为 form2的表单
4、,上面有“调整”(名称Command1)和“退出”(名称 Command2)两个命令按钮。单击“调整”命令按钮时,调用 change_c命令程序实现工资调整;单击“退出”命令按钮时,关闭表单。 注意:在两个命令按钮中均只有一条命令,不可以有多余命令。(分数:2.00)_国家二级 VF机试-试卷 8答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_解析:2.(1)利用 SQL的 SELECT命令将表“studentdbf”复制到“student bkdbf”表中。 (2)利用 SQL的INSERT命令插入记录(“2
5、0080002“,“张三“,“男“,18)到“student_bkdbf”表中。 (3)利用 SQL的UPDATE命令将“student_bkdbf”表中“学号”为“20080001”的学生“姓名”改为“李四”。 (4)利用 SQL的 DELETE命令删除“student_bkdbf”表中“学号”为“20080001”的学生。(分数:2.00)_正确答案:(正确答案:保存在“resulttxt”文件中的 4条语句分别为: (1)SELECT*INTO TABLE student_bk FROM student(回车执行) (2)INSERT INTO student_bk VALUES(“20
6、080002“,“张三“,“男“,18)(回车执行) (3)UPDATE student_bk SET 姓名=“李四“WHERE 学号=“20080001“(回车执行) (4)DELETE FROM student_bk WHERE学号=“20080001“(回车执行)解析:二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.(1)在数据库“school”下创建一个名称为“view1”的视图,该视图的 SELECT语句用于查询“工资”表的部门编号、职员编号、姓名、工资、补贴、奖励、保险和实发工资,其中实发工资由工资、补贴和奖励三项相加,然后再减去保险得到
7、,结果按“部门编号”降序排序,最后将定义视图的命令代码存放到命令文件“view1prg”中,并执行该程序。 (2)设计一个名称为“bd2”的表单,表单以表格方式显示“school”数据库中“student”表的记录。在该表单的右下方有一个命令按钮,名称为 Command1,标题为“关闭”,单击该按钮退出表单。(分数:2.00)_正确答案:(正确答案:(1)在命令窗口中输入命令:MODI COMM view1(回车执行),打开程序文件编辑窗口,在程序文件编辑窗口中输入以下程序代码: OPEN DATABASE schooldbc: CREATE VIEW vlew1 AS SELECT部门编号,
8、职员编号,姓名,工资,补贴,奖励,保险,工资+补贴+奖励保险 AS 实发工资FROM工资 ORDER BY部门编号 DESC 关闭程序文件编辑窗口并保存程序文件。 在命令窗口中输入命令:DO vlew1(回车执行),执行程序文件。 (2)选择【文件】【新建】命令,选择“表单”,单击“新建文件”按钮打开表单设计器,单击表单控件工具栏上的“命令按钮”控件图标,为表单添加一个命令按钮Command1,单击表单控件工具栏上的“表格”控件图标,再添加一个表格控件。 选择命令按钮,将其放置在表格控件的右下角,在按钮属性窗口中将命令按钮 Command1的 Caption属性值修改为“关闭”。双击“关闭”命
9、令按钮,在 Click事件中输入代码:ThisFormRelease,用来关闭表单。 选择表格控件,在表格控件属性窗口中将“RecordSource”属性值修改为“student”,将“RccordsourceType”属性值修改为“0”。 选择【表单】【执行表单】命令,系统首先要求保存该表单文件,在弹出的“另存为”对话框中输入表单文件名“bd2”,保存在考生文件夹下,然后运行表单。)解析:三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_解析:6.请编写名称为 change_c的程序并执行;该程序实现下面的功能: 将雇员工资表 salarys进行备份,备份文件
10、名为 bak_salarysdbf;利用“人事部”向“财务部”提供的雇员工资调整表 c_salary1的“工资”,对 salarys表的“工资”进行调整(请注意:按“雇员号”相同进行调整,并且只是部分雇员的工资进行了调整,其他雇员的工资不动)。 设计一个名称为 form2的表单,上面有“调整”(名称Command1)和“退出”(名称 Command2)两个命令按钮。单击“调整”命令按钮时,调用 change_c命令程序实现工资调整;单击“退出”命令按钮时,关闭表单。 注意:在两个命令按钮中均只有一条命令,不可以有多余命令。(分数:2.00)_正确答案:(正确答案:步骤 1:在命令窗口执行命令:
11、 MODIFY COMMAND chanae_c ,打开程序文件编辑器编写代码。 步骤 2:在编辑器中输入如下程序代码: SELECT * FROM SALARYS INTO TABLE bak_salarys SELECT 3 USE c_salary1ORDER 雇员号 SELECT salarys SET RELATION_TO 雇员号 INTO c_8alary1 REPLACE ALL 工资 WITH c_salary1工资 FOR 雇员号=c_salary1雇员号 SET RELATION TO 步骤 3:单击“常用”工具栏中的“运行”按钮,保存并运行程序。 步骤 4:在命令窗口执
12、行命令: CREATE FORM form2 ,打开表单设计器新建表单。 步骤 5:从“表单工具栏”中依次向表单添加两个命令按钮控件。在“属性”面板的下拉框中选择表单对象,在“全部”选项卡中修改对象属性值,见表 2-14。 )解析:解析:本题考查的是程序的编写;表单的建立以及常用控件属性的设置;控件事件代码的编写。程序的大致思想是:先通过 select查询语句将 salarys表进行备份,然后以“雇员号”为当前索引打开c_salary1表,接着通过索引“雇员号”建立 salarys表和 c_salary1表的临时联系,这样,c_salary1表中记录指针就会随着 salarys表中记录指针的变化而变化,即两个表中的记录指针在同一时刻指向同一个“雇员号”;然后将 salarys表中的“工资”值用 c_salary1表中的“工资”值替换。