1、国家二级 ACCESS 机试(操作题)-试卷 67 及答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹中,“samp1accdb”数据库文件已建立了 3 个关联表对象(名为“线路”、“游客”和“团队”)和窗体对象“brow”。试按以下要求,完成表和窗体的各种操作。 (1)按照以下要求修改表的属性: “线路”表:设置“线路 ID”字段为主键、“线路名”字段为必填字段。 “团队”表:设置“团队 ID”字段为有索引(无重复)、“导游姓名”字段为必填字段。 按照以下要求修改表结构:向“团队”表增加一个字段,字段名称为“线路 ID”,字段类型为
2、文本型,字段大小为 8。 (2)分析“团队”表的字段构成、判断并设置主键。 (3)建立“线路”和“团队”两表之间的关系,并实施参照完整。 (4)将考生文件夹下 Excel 文件“Testxlsx”中的数据链接到当前数据库中。 要求:数据中的第一行作为字段名,链接表对象命名为“tTest”。 (5)删除“游客”表对象。 (6)修改“brow”窗体对象的属性,取消“记录选择器”和“分隔线”显示,将窗体标题栏的标题改为“线路介绍”。(分数:2.00)_二、简单应用题(总题数:1,分数:2.00)2.考生文件夹下存在一个数据库文件“samp2accdb”,里面已经设计好两个表对象住宿登记表“tA”和住
3、房信息表“tB”,其中“tA”和“tB”表中“房间号”的前两位为楼号。试按以下要求完成设计: (1)创建一个查询,查找楼号为“01”的客人记录,并显示“姓名”、“入住日期”和“价格”三个字段内容,所建查询命名为“qT1”。 (2)创建一个查询,按输入的房间价格区间查找,显示“房间号”字段信息。当运行查询时,应分别显示提示信息“最低价”和“最高价”,所建查询命名为“qT2”。 (3)以表对象“tB”为基础,创建一个交叉表查询。要求:选择楼号为行标题,列名称显示为“楼号”,“房间类别”为列标题来统计输出每座楼房的各类房间的平均房价信息。所建查询命名为“qT3”。 注:房间号的前两位为楼号。交叉表查
4、询不做各行小计。 (4)创建一个查询,统计出各种类别房屋的数量。所建查询显示两列内容,列名称分别为“type”和“num”,所建查询命名为“qT4”。(分数:2.00)_三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下有一个数据库文件“samp3accdb”,里面已经设计好了表对象“tEmp”、窗体对象“fEmp”、报表对象“rEmp”和宏对象“mEmp”。试在此基础上按照以下要求补充设计。 (1)设置表对象“tEmp”中“年龄”字段的有效性规则为:年龄值在 2050 岁之间(不含 20 岁和 50 岁),相应有效性文本设置为“请输入有效年龄”。 (2)设置报表“rEmp”按照“
5、性别”字段降序(先女后男)排列输出;将报表页面页脚区域内名为“tPage”的文本框控件设置为“第 N 页共 M 页”形式显示。 (3)将“fEmp”窗体上名为“btnP”的命令按钮由灰色无效状态改为有效状态。设置窗体标题为“职工信息输出”。 (4)根据以下窗体功能要求,对已给的命令按钮事件过程进行补充和完善。在“fEmp”窗体上单击“输出”命令按钮(名为“btnP”),弹出一个输入对话框,其提示文本为“请输入大于 0 的整数值”。 输入 1 时,相关代码关闭窗体(或程序)。 输入 2 时,相关代码实现预览输出报表对象“rEmp”。 输入3 时,相关代码调用宏对象“mEmp”,以打开数据表“tE
6、mp”。 注意:不要修改数据库中的宏对象“mEmp”;不要修改窗体对象“fEmp”和报表对象“rEmp”中未涉及的控件和属性;不要修改表对象“tEmp”中未涉及的字段和属性。 程序代码只允许在“*Add*”与“*Add*”之间的空行内补充一行语句,完成设计,不允许增删和修改其他位置已存在的语句。(分数:2.00)_国家二级 ACCESS 机试(操作题)-试卷 67 答案解析(总分:6.00,做题时间:90 分钟)一、基本操作题(总题数:1,分数:2.00)1.在考生文件夹中,“samp1accdb”数据库文件已建立了 3 个关联表对象(名为“线路”、“游客”和“团队”)和窗体对象“brow”。
7、试按以下要求,完成表和窗体的各种操作。 (1)按照以下要求修改表的属性: “线路”表:设置“线路 ID”字段为主键、“线路名”字段为必填字段。 “团队”表:设置“团队 ID”字段为有索引(无重复)、“导游姓名”字段为必填字段。 按照以下要求修改表结构:向“团队”表增加一个字段,字段名称为“线路 ID”,字段类型为文本型,字段大小为 8。 (2)分析“团队”表的字段构成、判断并设置主键。 (3)建立“线路”和“团队”两表之间的关系,并实施参照完整。 (4)将考生文件夹下 Excel 文件“Testxlsx”中的数据链接到当前数据库中。 要求:数据中的第一行作为字段名,链接表对象命名为“tTest
8、”。 (5)删除“游客”表对象。 (6)修改“brow”窗体对象的属性,取消“记录选择器”和“分隔线”显示,将窗体标题栏的标题改为“线路介绍”。(分数:2.00)_正确答案:(正确答案:(1)【操作步骤】 步骤 1:选择“表”对象,右键单击“线路”表,从弹出的快捷菜单中选择“设计视图”命令。 步骤 2:右键单击“线路 ID”字段行,从弹出的快捷菜单中选择“主键”命令,如图 3266 所示。 步骤 3:单击“线路名”字段行任一点,在“必需”行下拉列表中选择“是”,如图 3267 所示。 步骤 4:按 CtrlS 保存修改,关闭设计视图。 步骤 5:右键单击“团队”表,从弹出的快捷菜单中选择“设计
9、视图”命令。单击“团队 ID”字段行任一点,在“索引”行的下拉列表中选择“有(无重复)”。 步骤 6:单击“导游姓名”字段行任一点,在“必需”行的下拉列表中选择“是”。 步骤 7:在“出发日期”下一行的“字段名称”处输入“线路 ID”,单击“数据类型”列,在“字段大小”行输入“8”,如图 3268 所示。 (2)【操作步骤】 步骤 1:选中“团队ID”字段行。 步骤 2:右键单击“团队 ID”行,从弹出的快捷菜单中选择“主键”命令,如图 3269 所示。 步骤 3:按 CtrlS 保存修改,关闭设计视图。 (3)【操作步骤】 步骤 1:单击“数据库工具”选项卡“关系”组中的“关系”按钮,如不出
10、现“显示表”对话框,则单击“关系工具”的“设计”选项卡“关系”组中的“显示表”按钮,从弹出的对话框中添加表“线路”和“团队”,关闭“显示表”对话框。 步骤 2:选中表“线路”中的“线路 ID”字段,拖动鼠标到表“团队”的“线路 ID”字段,放:开鼠标,在弹出的“编辑关系”对话框中选择“实施参照完整性”复选框,然后单击“创建”按钮,如图3270 所示。 步骤 3:按 CtrlS 保存修改,关闭关系界面。 (4)【操作步骤】 步骤 1:单击“外部数据”选项卡下“导入并链接”组中的“Excel”按钮,弹出“获取外部数据Excel 电子表格”对话框,单击“浏览”按钮,在考生文件夹找到要导人的文件“Te
11、stxlsx”,单击“打开”按钮,选择“通过创建链接表来链接到数据源”单选框,单击“确定”按钮,如图 3271 所示。 步骤 2:单击“下一步”按钮,选中“第一行包含列标题”复选框,单击“下一步”按钮。 步骤 3:在“链接表名称”处输入“tTest”,单击“完成”按钮。 (5)【操作步骤】 右键单击“游客”表,从弹出的快捷菜单中选择“删除”命令,如图 3272 所示,在弹出的对话框中选择“是”按钮。 (6)【操作步骤】 步骤 1:选择“窗体”对象,右键单击“brow”窗体,从弹出的快捷菜单中选择“设计视图”命令。 步骤 2:右键单击“窗体选择器”,从弹出的快捷菜单中选择“属性”命令。在“格式”
12、选项卡的“标题”行输入“线路介绍”,在“记录选择器”和“分隔线”下拉列表分别选择“否”。关闭属性表,如图 3273 所示。 )解析:二、简单应用题(总题数:1,分数:2.00)2.考生文件夹下存在一个数据库文件“samp2accdb”,里面已经设计好两个表对象住宿登记表“tA”和住房信息表“tB”,其中“tA”和“tB”表中“房间号”的前两位为楼号。试按以下要求完成设计: (1)创建一个查询,查找楼号为“01”的客人记录,并显示“姓名”、“入住日期”和“价格”三个字段内容,所建查询命名为“qT1”。 (2)创建一个查询,按输入的房间价格区间查找,显示“房间号”字段信息。当运行查询时,应分别显示
13、提示信息“最低价”和“最高价”,所建查询命名为“qT2”。 (3)以表对象“tB”为基础,创建一个交叉表查询。要求:选择楼号为行标题,列名称显示为“楼号”,“房间类别”为列标题来统计输出每座楼房的各类房间的平均房价信息。所建查询命名为“qT3”。 注:房间号的前两位为楼号。交叉表查询不做各行小计。 (4)创建一个查询,统计出各种类别房屋的数量。所建查询显示两列内容,列名称分别为“type”和“num”,所建查询命名为“qT4”。(分数:2.00)_正确答案:(正确答案:(1)【操作步骤】 步骤 1:单击“创建”选项卡“查询”组中的“查询设计”按钮,在“显示表”对话框中分别双击表“认”、“tB”
14、,关闭“显示表”对话框。 步骤 2:分别双击“姓名”、“入住日期”、“价格”和“房间号”字段,将其添加到“字段”行。 步骤 3:在“房间号”字段的“条件”行输入:Left(tA房间号,2)“01”,单击“显示”行取消该字段的显示。如图3274 所示。 步骤 4:按 CtrlS 保存修改,另存为“qT1”,关闭设计视图。 (2)【操作步骤】 步骤 1:单击“创建”选项卡“查询”组中的“查询设计”按钮,在“显示表”对话框中双击表“tB”,关闭“显示表”对话框。 步骤 2:双击“房间号”、“价格”字段。 步骤 3:在“价格”字段的“条件”行输入“最低价And 步骤 4:按 CtdS 保存修改,另存为
15、“qT2”。关闭设计视图。 (3)【操作步骤】 步骤 1:单击“创建”选项卡“查询”组中的“查询设计”按钮,在“显示表”对话框中双击表“tB”,关闭“显示表”对话框。 步骤 2:单击“设计”选项卡“查询类型”组中的“交叉表”按钮。 步骤 3:在“字段”行的第一列输入“楼号:Left(tB!房间号,2)”,分别双击“房间类型”和“价格”字段。 步骤 4:在“价格”字段“总计”行下拉列表中选择“平均值”。 步骤 5:分别在“楼号:Left(tB!房间号,2)”,“房间类别”和“价格”字段的“交叉表”行下拉列表中选择“行标题”、“列标题”和“值”,如图 3276 所示。 步骤 6:按 CtrlS 保
16、存修改,另存为“qT3”。关闭设计视图。 (4)【操作步骤】 步骤 1:单击“创建”选项卡“查询”组中的“查询设计”按钮,在“显示表”对话框中双击表“tB”,关闭“显示表”对话框。 步骤 2:分别双击“房间类别”和“房间号”字段。 步骤 3:单击“设计”选项卡“显示隐藏”组中的“汇总”按钮,在“房间号”字段“总计”行下拉列表中选择“计数”。 步骤 4:在“房间类别”和“房间号”字段前分别添加“type:”和“num:”字样,如图 3277 所示。 )解析:三、综合应用题(总题数:1,分数:2.00)3.在考生文件夹下有一个数据库文件“samp3accdb”,里面已经设计好了表对象“tEmp”、
17、窗体对象“fEmp”、报表对象“rEmp”和宏对象“mEmp”。试在此基础上按照以下要求补充设计。 (1)设置表对象“tEmp”中“年龄”字段的有效性规则为:年龄值在 2050 岁之间(不含 20 岁和 50 岁),相应有效性文本设置为“请输入有效年龄”。 (2)设置报表“rEmp”按照“性别”字段降序(先女后男)排列输出;将报表页面页脚区域内名为“tPage”的文本框控件设置为“第 N 页共 M 页”形式显示。 (3)将“fEmp”窗体上名为“btnP”的命令按钮由灰色无效状态改为有效状态。设置窗体标题为“职工信息输出”。 (4)根据以下窗体功能要求,对已给的命令按钮事件过程进行补充和完善。
18、在“fEmp”窗体上单击“输出”命令按钮(名为“btnP”),弹出一个输入对话框,其提示文本为“请输入大于 0 的整数值”。 输入 1 时,相关代码关闭窗体(或程序)。 输入 2 时,相关代码实现预览输出报表对象“rEmp”。 输入3 时,相关代码调用宏对象“mEmp”,以打开数据表“tEmp”。 注意:不要修改数据库中的宏对象“mEmp”;不要修改窗体对象“fEmp”和报表对象“rEmp”中未涉及的控件和属性;不要修改表对象“tEmp”中未涉及的字段和属性。 程序代码只允许在“*Add*”与“*Add*”之间的空行内补充一行语句,完成设计,不允许增删和修改其他位置已存在的语句。(分数:2.0
19、0)_正确答案:(正确答案:(1)【操作步骤】 步骤 1:选择“表”对象,右键单击“tEmp”表,从弹出的快捷菜单中选择“设计视图”命令。 步骤 2:单击“年龄”字段行任一点,在“有效性规则”行输入“20 and 步骤 3:按 CtrlS 保存修改,关闭设计视图。 (2)【操作步骤】 步骤 1:选择“报表”对象,右键单击“rEmp”报表,从弹出的快捷菜单中选择“设计视图”命令。 步骤 2:单击“报表设计工具”的“设计”选项卡“分组和汇总”组中的“分组和排序”按钮,在“分组、排序和汇总”界面选择“添加排序”,选择“排序依据”下拉列表中的“性别”字段,选择“降序”,如图 3279 所示,关闭界面。
20、 步骤 3:右键单击“tPage”,从弹出的快捷菜单中选择“属性”命令,在“全部”选项卡“控件来源”行输入“”第”&Page&“页共“&Pages&“页“”,如图 3280 所示。关闭属性表。将该控件调整到合适的大小。 步骤 4:按 CtrlS 保存修改,关闭设计视图。 (3)【操作步骤】 步骤 1:选择“窗体”对象,右键单击“irEmp”窗体,从弹出的快捷菜单中选择“设计视图”命令。 步骤 2:右键单击命令按钮“btnP”,从弹出的快捷菜单中选择“属性”命令,在“数据”选项卡的“可用”行下拉列表中选择“是”,如图 3281 所示。关闭属性表。 步骤 3:右键单击“窗体选择器”,从弹出的快捷菜
21、单中选择“属性”命令,在“标题”行输入“职工信息输出”。关闭属性表。 (4)【操作步骤】 步骤 1:右键单击命令按钮“输出”,从弹出的快捷菜单中选择“事件生成器”命令,在弹出的对话框中选择“代码生成器”,单击“确定”按钮,进入编程环境,在空行内输入以下代码: Private Sub btnP-Click() Dim k As String *Add1* kInputBox(“请输入大于 0 的整数“,“Msg“) *Add1* If k“ “Then Exit Sub Select Case Val(k) Case Is3 DoCmdRuuMacro“mEmp“ Case 2 *Add2* DoCmdOpenReport“mEmp“ *Add2* Case 1 DoCmdClose End Select End Sub 如图 3282 所示。 )解析: