1、国家二级 VF机试模拟试卷 195及答案与解析 一、基本操作题( 30分) 1 (1)请在考生文件夹下建立一个项目 xm。 (2)将考生文件夹下的数据库 kshj加入到新建的项目 xm中。 (3)利用视图设计器在数据库中建立视图 myview,视图包括 “获奖情况 ”表的全部字段 (顺序同 “获奖情况 ”表中的字段 )和全部记录。 (4)从表 “获奖情况 ”中查询 “等级 ”为 “一等奖 ”的学生的全部信息 (“国籍 ”表的全部字段 ),并按 “分数 ”的升序存入新表 temp中。 二、简单应用题( 40分) 2 (1)利 用查询设计器创建查询,从考生文件夹下的 xuesheng表和 ehen
2、gji表中查询“数学 ”、 “英语 ”和 “信息技术 ”3门课中至少有一门课在 90分以上 (含 )的学生记录。查询结果包含 “学号 ”、 “姓名 ”、 “数学 ”、 “英语 ”和 “信息技术 ”5个字段;各记录按“学号 ”降序排序;查询去向为表 table1。最后将查询保存在 query1 qpr文件中,并运行该查询。 (2)首先创建数据库 cj_m,并向其中添加 xuesheng表和 ehengji表。然后在数据库中创建视图 view1:利用该视图只能查询少数民族学生的 “英语 ”成 绩;查询结果包含 “学号 ”、 “姓名 ”、 “英语 ”3个字段;各记录按 “英语 ”成绩降序排序,若 “
3、英语 ”成绩相同按 “学号 ”升序排序。最后利用刚创建的视图 view1查询视图中的全部信息,并将查询结果存放在表 table2中。 三、综合应用题( 30分) 3 在考生文件夹下,打开会员数据库 cdb,完成如下综合应用: 建立文件名为 form的表单,在表单中设计 “统计 ”和 “退出 ”两个按钮。要求如下: 在 “统计 ”按钮 (Command1)中,编写程序,根据会员到统计时 (系统当前时间 )所购买商品的总金额 (数量 *单价 ),确定该会员为 “金卡 ”、 “银卡 ”、 “铜卡 ”或 “普通 ”会员,并将其写入会员表 cus的 “会员类型 ”字段中。 金卡会员,总金额 =15000
4、元。 银卡会员,总金额 15000元 AND =10000元。 铜卡会员,总金额 10000元 AND =5000元。 普通会员,总金额 5000元 单击 “退出 ”按钮 (Command2)时,关闭表单。 表单设计完成后,运行表单,单击 “统计 ”按钮进行统计,然后单击 “退出 ”按钮关闭表单。 国家二级 VF机试模拟试卷 195答案与解析 一、基本操作题( 30分) 1 【正确答案】 (1)在命令窗口执行命令: CREATE PROJECT xm,新建一个项目管理器。 (2)在项目管理器中选中 “数据 ”选项卡内的 “数据库 ”项,然后单击 “添加 ”按钮,在弹出的 “打开 ”对话框中双击
5、 kshj数据库文件,将数据库添加到项目管理器中。 (3) 在项目管理器中单击 “数据库 ”前面的 “+”号,依次展开 “数据库 ”“kshj” 。如图 2-8所示。 选中 “本地视图 ”项单击 “新建 ”按钮,接着在弹出的“新建本地视图 ”对话框中单击 “新建视图 ”图标按钮,打开视图设计器。在 “添 加表或视图 ”对话框中双击 “获奖情况 ”表,将表添加到视图设计器中。 在 “字段 ”选项卡中单击 “全部添加 ”按钮,将 “可用字段 ”中的全部字段添加到 “选定字段 ”中。 单击 “常用 ”工具栏中的 “运行 ”按钮查看结果,将视图文件以文件名 myview保存。(4)在命令窗口输入以下命
6、令,将结果输出到 temp表中 (以下程序是通过查询设计器生成 )。 SELECT国籍 *; &选择需要输出的字段, “*”表示表中所有字段 FROM kshj!国籍 INNER JOIN kshj!获奖情况; &选择要进行联接的表 ON 国籍姓 名 =获奖情况姓名; &设置两个表的联接条件 WHERE 获奖情况等级 =“一等奖 “; &设置输出记录要满足的条件 ORDER BY获奖情况分数; &设置输出记录的排序条件 INTO TABLE temp dbf &指定查询结果输出到数据表 temp中 (注意:程序中的 “&”符号是功能注释符,该符号及后面的注释文字不会影响程序的执行,是对命令功能
7、的说明,非查询设计器生成的内容,考生在做题过程中可以不输入该注释内容,凡书中后面出现此符号则与本题相同,不再加以说明。 ) 【试题解析】 本大题考查了项 目管理器的建立及使用;视图设计器及查询设计器的使用。 新建项目可以通过菜单、工具栏或命令方式完成;向项目中添加数据库可以通过项目管理器右侧的 “添加 ”命令按钮完成。 视图和查询的操作类似,在设计第 4小题时,熟悉 SQL命令的考生也可以直接通过编写 sQL命令进行查询。 二、简单应用题( 40分) 2 【正确答案】 (1)步骤 1:在命令窗口执行命令: CREATE QUERY query1,打开查询设计器,将考生文件夹下的 xueshen
8、g表和 chengji表添加到查询设计器中。 步骤 2:添加两个表后 ,系统弹出 “联接条件 ”对话框,动查找两个表中相匹配的字段进行联接,单击 “确定 ”按钮设置两个表的联系。 步骤 3:依次双击 xuesheng表中的 “学号 ”、 “姓名 ”字段和 thengji表中的 “数学 ”、 “英语 ”、 “信息技术 ”字段添加到“字段 ”选项卡的 “选定字段 ”列表中。 步骤 4:在 “筛选 ”选项卡中选择 “字段名 ”为“Chengji数学 ”, “条件 ”为 “ =”,在 “实例 ”框中输入 “90”,在 “逻辑 ”下拉框中选择 “OR”;在第二行中,选择 “字段名 ”为 “Chengii
9、英语 ”, “条件 ”为 “ =”,在 “实例 ”框中输入 “90”,在 “逻辑 ”下拉框中选择 “OR”;在第三行中,选择 “字段名 ”为“Chengji信息技术 ”, “条件 ”为 “ =”,在 “实例 ”框中输入 “90”。如图 2-36所示。步骤 5:在 “排序依据 ”选项卡内双击 “选定字段 ”列表框中的 “Xuesheng学号 ”字段,将字段添加到 “排序条件 ”列表框中,在 “排序选项 ”中选择 “降序 ”方式。 步骤 6:执行【查询】 【查询去向】菜单命令,在弹出的 “查询去向 ”对话框中单击 “表 ”图标按钮,接着在 “表名 ”中输入文件名 table1,单击 “确定 ”按钮
10、。 步骤 7:最后单击 “常用 ”工具栏中的 “运 行 ”按钮查看结果,将查询文件保存到考生文件夹下。 (2)步骤 1:在命令窗口执行命令: MODIFY DATABASEcj_m,新建数据库并打开数据库设计器。在数据库设计器中右击鼠标,选择【添加表】快捷菜单命令,在弹出的 “打开 ”对话框中双击 Xuesheng表,将表添加到数据库中,以同样的方法将 Chengji表添加到数据库中。 步骤 2:在命令窗口执行如下 SQL命令语句建立视图: OPEN DATABASE cj_mCREATE VIEW view1 AS; SELECT Xuesheng学号,Xuesheng姓名 , Chengj
11、i英语; FROM cj_m!xuesheng INNER JOINcj_m!chengji; ON Xuesheng学号 =Chengji学号; WHERE ALLTRIM(Xuesheng民族 ) “汉 “; ORDER BY Chengji英 语 DESC,Xuesheng学号 (注意:以上 SQL语句查询语句部分是通过视图设计器生成,大家也可以直接在视图设计器中建立。 ) 步骤 3:在命令窗口执行如下 SQL查询命令语句保存查询结果: SELECT * FROM view1 INTO TABLE table2 【试题解析】 (1)本题主要考查了查询设计器的使用。本题的关键是在查询设计器
12、中,正确设置各筛选条件。根据题意,要查询 “数学 ”、 “荚语 ”和 “信息技术 ”3门课中至少有一门成绩大于等于 90分以上的记录,也就是说查找学生的 3门成绩中有 “数学 ”、 “英语 ”或 “信息技术 ”大于等于 90分的记录,因此多个条件之间的关系为逻辑或 (OR)的关系。注意在查询设计器的 “筛选 ”选项卡中正确选择逻辑运算符。 (2)本题主要考查了利用 SQL命令定义视图及 SQL的简单查询。根据题目要求,本题可以分两步完成, 首先是建立视图,然后通过 SQL查询视图中的记录。 本题的关键是视图的定义, SQL简单查询只需套用最基本的查询命令格式即可完成。而定义视图的过程中关键是排
13、序条件的设置,注意在 ORDER BY短语后正确设置两个字段的排序方式。 ASC短语表示升序排序,为系统默认的排序方式,可省略该短语; DESC短语表示降序排序,不可缺省。 本题中,视图的建立同样可以通过视图设计器完成,同样需要注意的是在视图设计器中,正确设置排序方式。 三、综合应用题( 30分) 3 【正确答案】 步骤 1:在命令窗口执行命令: CREATE FORM form,打开表单设计器新建表单。从 “表单工具栏 ”中依次向表单添加两个命令按钮。 步骤 2;在 “属性 ”面板的下拉框中选择表单对象,在 “全部 ”选项卡中修改对象属性值,见表 2-36。 步骤 3:双击命令按钮,编写各个
14、命令按钮的 Click事件代码。各按钮代码如下: *“统计 ”按钮的Click事件代码 * CLOSE ALLOPEN DATABASE CDBUSE CUS IN ODO WHILE!EOF() SELECT SUM(数量 *单价 ) AS 总金额 FROM CBC WHERE 会员号=CUS会员号 AND日期 =DATE(); GROUP BY会员号; INTO ARRAY ZJE&从 CBC表中获得与 CUS表当前所指记录 “会员号 ”相同的会员到统计时 (系统当前时间 )所购商品的总金额 (数量 +单价 ),将该值保存到数组 ZJE中 DO CASE &通过判断总金额数量,由 REPL
15、ACE语句修改 CUS表中 “会员类型 ”的值 CASE ZJE =15000 REPLACE会员类型 WITH“金卡会员 “ CASE ZJE 15000 AND ZJE=1 0000 REPLACE会员类型 WITH“银卡会员 “ CASE ZJE 10000 AND ZJE =5000 REPLACE 会员类型 WITH“铜卡会员 “ CASE ZJE 5000 REPLACE会员类型WITH“普通会员 “ ENDCASE SKIP &转向 CUS下一条记录进行处理 ENDDO *“退出 ”按钮的 Click事件代码 * THISFORM RELEASE 步骤 4:单击 “常用 ”工具栏
16、中的 “运行 ”按钮运行表单,单击 “统计 ”按钮查看结果,将表单文件保存到考生文件夹下。 【试题解析】 本题主要考查的是表单的建立、常用属 性的设置、 DO WHILE循环结构和 SQL分组计算查询。 对本题操作时,首先建立表单及其表单控件,并修改对象的属性值,然后对命令按钮编写事件代码。 本题要根据 cbc表中 “数量 ”和 “单价 ”字段信息来确定 cus表中 “会员类型 ”的值,需要同时使用这两张表。 基本解题思路是: 以 cus表为当前表,利用 DO WHILE循环语句对 cus表中的每条记录进行处理通过 SQL查询语句从 cbc表中获得与 cus表当前所指记录 “会员号 ”相同的会员到统计时 (系统当前时间 )所购买商品的总金额 (数量 *单价 ),将该 值保存到数组中,然后通过 DO CASE结构对总金额的值进行判断,利用 REPLACE命令修改cus表当前记录的 “会员类型 ”的值。每处理完一条记录,记录指针便指向下一条记录,一直到处理完 cus表中的所有记录。 其中,总金额的计算使用 SUM函数,将查询结果存放到数组中要使用 INTO ARRAY短语。
copyright@ 2008-2019 麦多课文库(www.mydoc123.com)网站版权所有
备案/许可证编号:苏ICP备17064731号-1