1、国家二级 VF机试模拟试卷 241及答案与解析 一、基本操作题( 30分) 1 (1)打开考生文件夹下的表单 one(如图 1-25所示 ),在 “打开 ”命令按钮的 Click事件中增加一条语句,使表单运行时单击该命令按钮的结果是使 “关闭 ”按钮变为可用。 (2)打开考生文件夹下的表单 two(如图 1-26所示 ),在选项组中增加一个单选钮 (如图 1-27所示 )。注意:不能改变原先的名称以及属性值。 (3)使用 SQL语句为考生文件夹下的 “学院表 ”增加一个字段 “教师人数 ”(整数型 ),同时为该字段设置有效性规则;教师人数 =0。请将该 SQL语句存储在 three prg文件
2、中,否则不得分。 (4)使用 SQL语句将考生文件夹下的自由表 teacher中 “教师姓名 ”为 Jack的工资修改为 8000元。请将该 SQL语句存储在 four prg文件中,否则不得分。 二、简单应用题( 40分) 2 在考生文件夹下完成如下简单应用: (1)将 “order d”表中的全部记录追加到 “order_d1”表中,然后用 SQL的 SELECT语句完成查询:列出所有订购单的订单编号、订单日期、商品编号、商品名称和总金额 (按订单编号升序排列,订单编号相 同的再按总金额降序排列 ),并将结果存储到“result”表中,将 SQL语句保存在 “cx1 prg”文件中。 (2
3、)打开 “cx2 prg”命令文件,该命令文件包含 3条 SQL语句,每条 SQL语句中都有一个错误,请改正 (注意:在出现错误的地方直接改正,不可以改变 SQL语句的结构和 SQL短语的顺序 )。 三、综合应用题( 30分) 3 score_manger数据库中含有三个数据库表 student、 scorcl和 course。为了对 score manager数据库数据进行查询,设计一个如图 1-17所示的表单 myform1(控件名为form1,表单文件名 myform1 scx)。表单的标题为 “成绩查询 ”。表单中有文本 “输入学号(名称为 Label1的标签 )”和用于输入学号的文本
4、框 (名称为 Text1)以及 “查询 ”(名称为Command1)和 “退出 ”(名称为 Command2)两个命令按钮以及一个表格控件。 表单运行时,用户首先在文本框中输入学号,然后单击 “查询 ”按钮,如果输入学号正确,在表单右侧以表格 (名称为 Grid1)形式显示该生所选课程名和成绩,否则提示 “学号不存在,请重新输入学号 ”。 单击 “退出 ”按钮,关闭 表单。 国家二级 VF机试模拟试卷 241答案与解析 一、基本操作题( 30分) 1 【正确答案】 (1) 在命令窗口执行命令: MODIFY FORM one,打开表单设计器新建表单。 双击 “打开 ”命令按钮 (Command
5、1)编写 Click事件代码:THISFORM COMMAND2 ENABLED= T 。 (2) 在命令窗口执行命令: MODIFY FORM two,打开表单设计器新建表单。 选中表单中的选项组控件,在 “属性 ”面板中修 改选项组 (OptionGroup1)的ButtonCount属性值为: 3:然后在表单中调整选项组的大小,显示新增的单选按钮(Option3),在 “属性 ”面板顶部的下拉框中选中 “Option3”项:然后修改该选项按钮的Caption属性值为:程序设计,适当调整单选按钮的标题大小显示全部文字。 (3) 在命令窗口执行命令: MODIFY COMMAND three
6、,打开程序文件编辑器。 在编辑器中输入如下程序代码: ALTER TABLE学院表 ADD教师人数 I CHECK教师人数 =0 在命令窗口执行命令: DO three,执行程序文件。 (4) 在命令窗口执行命令: MODIFY COMMAND four,打开程序文件编辑器。 在编辑器中输入如下程序代码: UPDATE TEACHER SET 工资 =8000 WHERE姓 名 =“Jack“ 在命令窗口执行命令: DO four,执行程序文件。 【试题解析】 本题考查了表单控件常用属性设置; SQL定义功能; SQL更 新语句。 表单控件的属性可以在 “属性 ”面板中设置,也可以通过命令语句
7、设置,通过控件的 Enabled属性可以设置控件是否可用:选项组控件通过 ButtonCount属性控制选项组中单选按钮的个数。 利用 SQL定义功能的 ALTER TABLE语句可以修改表结构内容;利用 SQL-UPDATE语句可以更新表中记录,考生熟记此两种 SQL语句的固定语法即可完成本题的 SQL语句编写。 二、简单应用题( 40分) 2 【正确答案】 (1) 在命令窗口中输入命令: MODI COMM cx1(回车执行 ),打开程序文件编辑窗口,在程序文件编辑窗口中输入以下程序代码: USE order_d1 APPEND FROM order_d USE SELECT order_
8、m订单编号,订单日期,商品信息商品编号,商品名称,数量 *价格 AS总金额 INTO TABLE result FROM order_m, order_d,商品信息WHERE order_m订单编号 =order_d订单编号 AND order_d商品编号 =商品信息商品编号 ORDER BY order_m订单编号,总金额 DESC 关闭程序文件编辑窗口并保存程序文件。 在命令窗口中输入命令: DO cx1(回车执行 ),执行程序文件。 (2) 在命令窗口中输入命令: MODI COMM cx2(回车执行 ),打开程序文件编辑窗口,在程序文件编辑窗口中做以下修改 (注:黑体带下划线部分为修改
9、的地方 ): SELECT*FROM order_m WHERE订单日期 =cTOD(“010107“) SELECTorder_m 订单编号,客户编号,商品编号,数量 FROM order_m, order_d WHERE order_m订单编号 =order_d订单编号 SELECT order_m订单编号,商品编号,数量 FROM order_m, order_d wHERE order_m订单编号 =order_d订单编号 ORDER BYorder_m 订单编号 关闭程序文件编辑窗口并保存程序文件。 三、综合应用题( 30分) 3 【正确答案】 步骤 1:在命令窗 口执行命令: CR
10、EATE FORM myform1,打开表单设计器新建表单。 步骤 2:从 “表单控件 ”工具栏中依次向表单添加一个标签、一个文本框、两个命令按钮和一个表格控件。在 “属性 ”面板的下拉框中选择表单对象,在 “全部 ”选项卡中修改对象属性值,见表 2-20。步骤 3:双击命令按钮,编写各个命令按钮的 Click事件代码。各按钮代码如下: *查询 (Command1)的 click事件代码 *GO TOP LOCATE FOR student学号=ALLTRIM(THISFORM TEXT1 VALUE)IF student学号=ALLTRIM(THISFORM TEXT1 VALUE)THIS
11、FORM GRID1 RECORDSOURCE=“SELECTCourse课程名, Score1成绩, FROM COUrse INNER JOIN scorel; INNER JOIN student; ON student学号 =Scorel学号; ON Course课程号 =Score1课程号; WHERE Student学号=ALLTRIM(THISFORM TEXT1 VALUE); INTO CURSOR TEMP“ELSEMESSAGEBOX(“学号不存在,请重新输入学号“)THISFORM GRID1 RECORDSOURCE=“ENDIF *“退出 ”按钮的 Click事件代码 * THISFORM RELEASE 步骤 4:单击 “常用 ”工具栏中的 “运行 ”按钮查看结果,将表单文件保存到考生文件夹下。 【试题解析】 表单文件的创建、控件的属性的修改、 SOL 语句运用、表单的退出等知识点。 对本题操作时,首先根据题意新建表单、添加控件并修 改相关属性。本题的重点是 “查询 ”按钮 Click事件的编写,文本框中的内容用value属性表示;在表中查找输入的学号用 locate for命令,如果找到,则记录指针指向该记录,如果没找到,则指向文件尾;事件代码中用 IF.ELSE.ENDIF选择结构实现 “找到学号 ”和 “没找到学号 ”两种情况。