1、国家二级 VF 机试(操作题)-试卷 164 及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹下的数据库 salary db 中完成如下操作:(1)在数据库 salary_db 中建立表 dept,表结构如下: 字段名 类型 宽度 部门号 字符型 2 部门名 字符型 20 随后在表中输入 5 条记录,记录内容如下: 部门号 部门名 01 制造部 02 销售部 03 项目部 04 采购部 05 人事部 (2)为 dept 表创建一个主索引(升序),索引名和索引表达式均是“部门号”。 (3)通过“部门号”字段建立 salarys 表和
2、dept 表间的永久联系。 (4)为以上建立的联系设置参照完整性约束:更新规则为“级联”;删除规则为“限制”;插入规则为“限制”。(分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.(1)使用一对多表单向导新建一个表单 sport_form。要求:使用“国家”为父表并选择“国家名称”字段作为显示字段,“获奖牌情况”为子表并选择“项目名称”和“名次”字段作为显示字段,使用“国家代码”建立表之间的关系,表单样式选择“阴影式”,按钮类型选择“图片按钮”,按“国家名称”升序排列,表单标题为“奥运会获奖情况”。 (2)在 SPORT 数据库中使用视图设计器建立视图 sport_view,
3、该视图根据“国家”和“获奖牌情况”两个表统计每个国家获得的金牌数(“名次”为“1”表示获得一块金牌),视图中包括“国家名称”和“金牌数”两个数据项,视图中的记录先按“金牌数”降序排列、再按“国家名称”降序排列。(分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.设计一个文件名和表单名均为 myaccount 的表单。表单的标题为“外汇持有情况”。表单中有一个选项按钮组控件(myOption)、一个表格控件(Grid1)以及两个命令按钮“查询”(Command1)和“退出”(Command2)。其中,选项按钮组控件有两个按钮“现汇”(Option1)、“现钞”(Option2)。
4、 运行表单时,首先在选项组控件中选择“现钞”或“现汇”,单击“查询”命令按钮后,根据选项组控件的选择将“外汇账户”表的“现钞”或“现汇”(根据钞汇标志字段确定)的情况显示在表格控件中。如图 222 所示。(分数:2.00)_国家二级 VF 机试(操作题)-试卷 164 答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹下的数据库 salary db 中完成如下操作:(1)在数据库 salary_db 中建立表 dept,表结构如下: 字段名 类型 宽度 部门号 字符型 2 部门名 字符型 20 随后在表中输入 5 条记录,记录内容如下:
5、 部门号 部门名 01 制造部 02 销售部 03 项目部 04 采购部 05 人事部 (2)为 dept 表创建一个主索引(升序),索引名和索引表达式均是“部门号”。 (3)通过“部门号”字段建立 salarys 表和 dept 表间的永久联系。 (4)为以上建立的联系设置参照完整性约束:更新规则为“级联”;删除规则为“限制”;插入规则为“限制”。(分数:2.00)_正确答案:(正确答案:(1)命令窗口执行命令: MODIFY DATABASE salary_db ,打开 salary_db 数据库设计器。 在数据库设计器中右击鼠标,选择【新建表】快捷菜单命令,在弹出的“新建表”对话框中单击
6、“新建表”图标按钮,然后在弹出的“创建”对话框的“输入表名”框中输入“dept”,单击“保存”按钮打开表设计器。 根据题意,在表设计器中逐行输入每个字段的字段名,并设置字段类型和宽度,然后单击“确定”按钮,此时系统会弹出一个对话框询问“现在输入数据记录吗?”,单击“是”按钮,在弹出的“dept”表编辑窗口中根据题目要求逐行输入每条记录的值。 (2)右击数据库设计器中的dept 表,选择【修改】快捷菜单命令,打开 dept 表设计器,在“字段”选项卡中选中“部门号”,在“索引”列中选择“升序”,然后在“索引”选项卡中修改“索引类型”为主索引,建立“部门号”字段的主索引,单击“确定”按钮保存表结构
7、修改。 (3)在数据库设计器中,拖动 dept 表“索引”下方的主索引“部门号”到 salarys 表“索引”下方的普通索引“部门号”上,为两个表建立联系。 (4)选中dept 和 salarys 两个表之间的连线(被选中的线会变粗),首先执行【数据库】【清理数据库】菜单命令,清空数据库表中带有删除标记的记录,然后执行【数据库】【编辑参照完整性】菜单命令。 在打开的“参照完整性”对话框的表格中,选择“更新”下的单元格内容为“级联”;“删除”下的单元格内容为“限制”;“插入”下的单元格内容为“限制”。单击“确定”按钮保存参照完整性的修改。)解析:解析:本大题考查了数据库表的建立和索引的建立;表间
8、永久联系的建立和参照完整性的设置。 在表设计器的“字段”选项卡中,可以通过选择“排序”下拉框中的“升序”或“降序”为指定的字段建立一个索引名与索引表达式相同的普通索引,如果要改变索引名或索引类型,则需要在“索引”选项卡中进行修改。二、简单应用题(总题数:1,分数:2.00)2.(1)使用一对多表单向导新建一个表单 sport_form。要求:使用“国家”为父表并选择“国家名称”字段作为显示字段,“获奖牌情况”为子表并选择“项目名称”和“名次”字段作为显示字段,使用“国家代码”建立表之间的关系,表单样式选择“阴影式”,按钮类型选择“图片按钮”,按“国家名称”升序排列,表单标题为“奥运会获奖情况”
9、。 (2)在 SPORT 数据库中使用视图设计器建立视图 sport_view,该视图根据“国家”和“获奖牌情况”两个表统计每个国家获得的金牌数(“名次”为“1”表示获得一块金牌),视图中包括“国家名称”和“金牌数”两个数据项,视图中的记录先按“金牌数”降序排列、再按“国家名称”降序排列。(分数:2.00)_正确答案:(正确答案:(1) 步骤 1:命令窗口执行: OPEN DATABASE SPORT ,打开数据库环境。 步骤2:执行【文件】【新建】菜单命令,或单击“常用”工具栏的“新建”按钮,在“新建”对话框中选“表单”,单击“向导”图标按钮,弹出“向导选取”对话框,选“一对多表单向导”项,
10、单击“确定”按钮,启动表单向导。 步骤 3:“步骤 1-从父表中选定字段”的“数据库和表”下选“国家”表,将“可用字段”中的“国家名称”字段添加到“选定字段”中,单击“下一步”按钮。 步骤 4:“步骤2从子表中选定字段”的“数据库和表”下选“获奖牌情况”表,将“可用字段”中的“项目名称”和“名次”字段字段添加到“选定字段”中,单击“下一步”。 步骤 5:“步骤 3建立表之间的关系”界面系统自动建立两个表的联系,单击“下一步”按钮。 步骤 6:“步骤 4选择表单样式”选“样式”中的“阴影式”,“按钮类型”中选“图片按钮”,单击“下一步”。 步骤 7:“步骤 5排序次序”中双击“可用的字段或索引标
11、识”中的“国家名称”字段到“选定字段”列表中,单击“下一步”按钮。 步骤 8:“步骤 6完成”界面中的“请键入表单标题”下方文本框中输入“奥运会获奖情况”,单击“完成”按钮。 步骤 9:在“另存为”对话框的“保存表单为:”框中输入表单文件名 sport_form,单击“保存”按钮。 (2) 步骤 1:命令窗口执行: MODIFY DA rrABASE sport ,打开数据库设计器。 步骤2:在数据库设计器中右击,选择【新建本地视图】,在“新建本地视图”中单击“新建视图”按钮,在“添加表或视图”对话框中依次双击“国家”和“获奖牌情况”表,将表添加到视图设计器中。 步骤3:双击“国家“表中的“国
12、家名称”字段添加到“选定字段”中;在“函数和表达式”框中输入:COUNT(*)AS 金牌数,单击“添加”按钮添加到“选定字段”列表中。 步骤 4:在“筛选”选项卡的“字段名”下拉列表中选择“获奖牌情况名次”字段,在“条件”中选择“=”,在“实例”中输入“1”。 步骤 5:在“排序依据”选项卡中双击“选定字段”列表框中的“COUNT(*)AS 金牌数”字段添加到“排序条件”列表框中,“排序选项”中“降序”;再双击以选定字段”中的“国家国家名称”字段添加到“排序条件”列表框中,在“排序选项”中选择“降序”单选项。 步骤 6:在“分组依据”选项卡中双击“选定字段”列表框中的“国家国家名称”字段,添加
13、到“分组字段”。 步骤 7:单击“常用”工具栏中的“运行”按钮查看结果,以 sport_view 名保存视图。)解析:解析:(1)本题考查一对多表单向导的使用。在启动向导前,可以先打开数据库环境,这样在启动向导添加数据表时,可在向导界面中直接选中所需的数据表,本题注意选择“一对多表单向导”。 (2)本题考查的是视图设计器的使用,视图只能保存在数据库中。 可直接在视图设计器“字段”选项卡的“函数和表达式”下的文本框中输入表达式,也可以通过打开“表达式生成器”对话框进行输入,可通过 As短语为输入的表达式指定一个新的视图字段名。用于统计金牌的函数为 COUNT()。 可以按“国家名称”字段对记录分
14、组。筛选条件设为“获奖牌情况名次”等于“1”。三、综合应用题(总题数:1,分数:2.00)3.设计一个文件名和表单名均为 myaccount 的表单。表单的标题为“外汇持有情况”。表单中有一个选项按钮组控件(myOption)、一个表格控件(Grid1)以及两个命令按钮“查询”(Command1)和“退出”(Command2)。其中,选项按钮组控件有两个按钮“现汇”(Option1)、“现钞”(Option2)。 运行表单时,首先在选项组控件中选择“现钞”或“现汇”,单击“查询”命令按钮后,根据选项组控件的选择将“外汇账户”表的“现钞”或“现汇”(根据钞汇标志字段确定)的情况显示在表格控件中。
15、如图 222 所示。(分数:2.00)_正确答案:(正确答案:步骤 1:命令窗口执行:CREATE FORM myaccount,打开表单设计器新建表单。向表单添加一个选项按钮组、一个表格及两个命令按钮控件。 步骤 2:选择表单对象,修改对象属性值,见表 324。 )解析:解析:本大题考查了表单及控件的常用属性和方法的设置;程序的分支结构;SQL 简单查询。 要注意选项组处于“编辑”状态,能单独选定选项组中的按钮,否则“属性”面板中不会出现 Caption 属性,另外,由于表格(Grid1)显示的是查询结果的值,因此数据源类型(RecordSourceType)应为“4-SQL 说明”,用来显示查询生成的临时表记录。 当选项组的 Value 值为 1 时表示被选定的是第一个单选项,Value值为 2 时表示被选定的是第二个单选项。在进行代码设计时,可以通过 DO CASE 分支结构判断当前被选定的是哪个单选项,完成该单选项所对应执行的功能。