1、国家二级 VF 机试-试卷 234 及答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_2.(1)建立数据库“教材dbc”,把表“教材dbf”和“作者dbf”添加到该数据库。 (2)为“作者”表建立主索引,索引名和索引表达式均为“作者编号”。 (3)为“教材”表分别建立两个普通索引:索引名和索引表达式均为“教材编号”,索引名和索引表达式均为“作者编号”。 (4)建立作者表和教材表之间的联系。(分数:2.00)_二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_4.在考生文件夹下,打
2、开会员数据库 cdb,完成如下简单应用: (1)使用查询设计器设计一个名称为 two的查询,查询 2003 年会员购买商品的情况,将结果按会员号排序(升序)并输出(查询去向)到 two 表中。two 表中的字段名分别为:“会员号”、“会员名”、“商品名”、“金额”,其中:“会员号”来自会员表 cus,“金额”通过“数量*单价”计算。设计完成后,运行该查询。 (2)修改一个名称为threeprg 的命令文件。该命令文件查询累计消费金额在 5000 元以上、每次购买数量大于或等于 10 的“女”会员的“会员号”、“会员名”、“单位”和“电话”,结果输出到表 three 中。该命令文件在第3 行、第
3、 6 行、第 7 行有错误,打开该命令文件,直接在错误处修改,不允许增加和删除行。修改完成后,运行该命令文件。(分数:2.00)_三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_6.设计名为 mystu 的表单(控件名为 form1,文件名为 mystu)。表单的标题为“学生学习情况统计”。表单中有一个选项组控件(命名为 myOption)和两个命令按钮“计算”(名称为 Command1)和“退出”(名称为Command2)。其中,选项组控件有两个按钮“升序”(名称为 Option1)和“降序”(名称为 Option2)。 运行表单时,首先在选项组控件中选择“
4、升序”或“降序”(使用 IF 语句判断),单击“计算”命令按钮后,按照成绩“升序”或“降序”(根据选项组控件)将选修了“C 语言”的学生学号和成绩分别存入stu_sort1dbf 和 stu_sort2dbf 文件中。单击“退出”按钮关闭表单。 注意:完成表单设计后要运行表单的所有功能。(分数:2.00)_国家二级 VF 机试-试卷 234 答案解析(总分:12.00,做题时间:90 分钟)一、基本操作题(总题数:2,分数:4.00)1.基本操作题()(分数:2.00)_解析:2.(1)建立数据库“教材dbc”,把表“教材dbf”和“作者dbf”添加到该数据库。 (2)为“作者”表建立主索引,
5、索引名和索引表达式均为“作者编号”。 (3)为“教材”表分别建立两个普通索引:索引名和索引表达式均为“教材编号”,索引名和索引表达式均为“作者编号”。 (4)建立作者表和教材表之间的联系。(分数:2.00)_正确答案:(正确答案:(1)选择【文件】【新建】命令,选择“数据库”,单击“新建文件”按钮,在“创建”对话框中输入数据库名“教材”,单击“保存”按钮将新建数据库“教材”保存到考生文件夹下。 在“数据库设计器”中,单击右键选择“添加表”,在“打开”对话框中选择表“教材”,单击“确定”按钮将“教材”添加到数据库“教材”中,同理,将表“作者”添加到数据库“教材”中。 (2)在数据库设计器中,选择
6、表“作者”,选择【数据库】【修改】命令,打开表设计器修改表“作者”结构,在“作者”表设计器中的“索引”选项卡的“索引名”中输入“作者编号”,选择索引类型为“主索引”,索引表达式为“作者编号”,单击“确定”按钮关闭表设计器并保存表“作者”结构。 (3)在数据库设计器中,选择表“教材”,选择【数据库】【修改】命令,打开表设计器修改表“教材”结构,在“教材”表设计器中的“索引”选项卡的“索引名”中输入“教材编号”,选择索引类型为“普通索引”,索引表达式为“教材编号”;单击下一行增加一个索引,在“索引名”中输入“作者编号”,选择索引类型为“普通索引”,索引表达式为“作者编号”,单击“确定”按钮关闭表设
7、计器并保存表“教材”结构。(4)在数据库设计器中,将“作者”表中“索引”下面的“作者编号”主索引字段拖曳到“教材”表中“索引”下面的“作者编号”索引字段上,这样就建立了两个表之间的永久性联系。)解析:二、简单应用题(总题数:2,分数:4.00)3.简单应用题()(分数:2.00)_解析:4.在考生文件夹下,打开会员数据库 cdb,完成如下简单应用: (1)使用查询设计器设计一个名称为 two的查询,查询 2003 年会员购买商品的情况,将结果按会员号排序(升序)并输出(查询去向)到 two 表中。two 表中的字段名分别为:“会员号”、“会员名”、“商品名”、“金额”,其中:“会员号”来自会员
8、表 cus,“金额”通过“数量*单价”计算。设计完成后,运行该查询。 (2)修改一个名称为threeprg 的命令文件。该命令文件查询累计消费金额在 5000 元以上、每次购买数量大于或等于 10 的“女”会员的“会员号”、“会员名”、“单位”和“电话”,结果输出到表 three 中。该命令文件在第3 行、第 6 行、第 7 行有错误,打开该命令文件,直接在错误处修改,不允许增加和删除行。修改完成后,运行该命令文件。(分数:2.00)_正确答案:(正确答案:(1)步骤 1:在命令窗口执行命令: OPEN DATABASE cdb ,打开数据库环境。 步骤 2:在命令窗口执行命令: CREATE
9、 QUERY two ,打开查询设计器,在“添加表或视图”对话框中,分别双击 cus、cbc 和 comm 表,将表添加到查询设计器中,此时,添加的表会按照数据库中已存在的表间联系自动为 3 个表在查询设计器中建立联系。 步骤 3:根据题目要求,在“字段”选项卡的“可用字段”中,依次双击“cus会员号”、“cus会员名”和“comm商品名”,将它们添加到“选定字段”列表中;然后在“函数和表达式”下的文本框中输入表达式:cbc数量*cbc单价 as 金额,再单击“添加”按钮,将其添加到“选定字段”列表中。 步骤 4:在“筛选”选项卡的“字段名”下拉列表框中选择“表达式”在“表达式生成器”对话框中
10、输入“YEAR(cbc日期)”,在“条件”下拉列表框中选择“=”,在“实例”文本框中输入“2003”。 步骤 5:在“排序依据”选项卡中双击“选定字段”列表框中的“cus会员号”,将其添加到“排序条件”列表框中,在“排序选项”中选择“升序”。 步骤6:执行【查询】【查询去向】菜单命令,在弹出的“查询去向”对话框中单击“表”图标按钮,接着在“表名”中输入文件名 two,单击“确定”按钮。 步骤 7:最后单击“常用”工具栏中的“运行”按钮查看结果,将查询文件保存到考生文件夹下。 (2)步骤 1:在命令窗口执行命令: MODIFY COMMAND three ,打开 threeprg 程序,命令中的
11、命令代码如下: SELECT 会员号,会员名,单位,电话; FROM cus; WHERE 会员号=ANY; (SELECT 会员号; FROM cbc; WHERE 数量=10 and 性别=女; GROUP BY会员号 HAVING 数量*单价=5000), INTO TABLE THREE 修改程序中的错误行,修改后的程序如下: SELECT 会员号,会员名,单位,电话; FROM cus; WHERE 性别=“女“and 会员号=ANY,(SELECT 会员号;FROM cbc; WHERE 数量=10; GROUP BY 会员号 HAVING SUM(数量*单价)=5000); &用
12、 sum 函数求和 INTO TABLE three 步骤 2:保存文件修改,在命令窗口执行命令: DO THREEPRG ,执行程序文件。)解析:解析:(1)本题主要考查的是查询设计器的使用。 查询用到了 cus、cbc 和 comm 三张表,查询的筛选条件为:year(销售日期)=2003,新字段名通过 AS 短语指定。 (2)本题主要考查的是 SQL 查询。该查询用到了 ANY 谓词,在嵌套查询中,使用 ANY 谓词时必须同时使用比较运算符,如“=ANY”的语义是等于子查询结果中的某个值,在进行比较运算时只要子查询中有一行能使结果为真,则结果就为真。在本查询中,在内查询中先求出每次购买数
13、量大于等于 10 并且消费总额大于等于 5000 的会员号,而消费总额应该用SUM(数量*单价)函数实现,在外查询中,在 cus 表中查找出性别为“女”且会员编号与任一内查询结果相同的会员信息由于“性别”字段在 cus 表中,故条件“性别=“女“”应写在外壹询中。三、综合应用题(总题数:2,分数:4.00)5.综合应用题()(分数:2.00)_解析:6.设计名为 mystu 的表单(控件名为 form1,文件名为 mystu)。表单的标题为“学生学习情况统计”。表单中有一个选项组控件(命名为 myOption)和两个命令按钮“计算”(名称为 Command1)和“退出”(名称为Command2
14、)。其中,选项组控件有两个按钮“升序”(名称为 Option1)和“降序”(名称为 Option2)。 运行表单时,首先在选项组控件中选择“升序”或“降序”(使用 IF 语句判断),单击“计算”命令按钮后,按照成绩“升序”或“降序”(根据选项组控件)将选修了“C 语言”的学生学号和成绩分别存入stu_sort1dbf 和 stu_sort2dbf 文件中。单击“退出”按钮关闭表单。 注意:完成表单设计后要运行表单的所有功能。(分数:2.00)_正确答案:(正确答案:步骤 1:在命令窗口执行命令: CREATE FORMmystu ,打开表单设计器新建表单。从“表单控件”工具栏中依次向表单添加两个命令按钮和一个选项组控件。 步骤 2:在“属性”面板的下拉框中选择表单对象,在“全部”选项卡中修改对象属性值,见表 2-33。 )解析:解析:本大题考查了表单及控件的常用属性和方法的设置;程序的分支结构。 在选项组的 Click事件中需要使用 SQL 语句进行查询,查询用到了“选课”和“课程”两张表,为联接查询,公共字段为“课程号”。