Access期末模拟练习题答案.doc
第一套一、基本操作题在考生文件夹下有一个数据库文件"samp1.accdb"。在数据库文件中已经建立了一个表对象"学生基本情况"。根据以下操作要求,完成各种操作:(1)将"学生基本情况"表名称改为"tStud"。(2)设置"身份ID"字段为主键;并设置"身份ID"字段的相应属性,使该字段在数据表视图中的显示标题为"身份证"。(3)将"姓名"字段设置为"有重复索引"。(4)在"家长身份证号"和"语文"两字段间增加一个字段,名称为"电话",类型为文本型,大小为12。(5)将新增"电话"字段的输入掩码设置为"010*"的形式。其中,"010"部分自动输出,后八位为0到9的数字显示。(010-00000000)(6)在数据表视图中将隐藏的"编号"字段重新显示出来。(取消隐藏)二、简单应用题考生文件夹下存在一个数据库文件"samp2.accdb",里面已经设计好表对象"tCourse"、"tScore"和"tStud",试按以下要求完成设计:(1)创建一个查询,查找党员记录,并显示"姓名"、"性别"和"入校时间"三列信息,所建查询命名为"qT1"。(2)创建一个查询,当运行该查询时,屏幕上显示提示信息:"请输入要比较的分数:",输入要比较的分数后,该查询查找学生选课成绩的平均分大于输入值的学生信息,并显示"学号"和"平均分"两列信息,所建查询命名为"qT2"。(>请输入要比较的分数:)(3)创建一个交叉表查询,统计并显示各班每门课程的平均成绩,统计显示结果如下图所示(要求:直接用查询设计视图建立交叉表查询,不允许用其他查询做数据源),所建查询命名为"qT3"。要求:利用Round函数对平均成绩取整。(Round(Avg(成绩),0))(4)创建一个查询,运行该查询后生成一个新表,表名为"tNew",表结构包括"学号"、"姓名"、"性别"、"课程名"和"成绩"等五个字段,表内容为90分以上(包括90分)或不及格的所有学生记录,并按课程名降序排序,所建查询命名为"qT4"。要求创建此查询后,运行该查询,并查看运行结果。三、综合应用题考生文件夹下有一个数据库文件"samp3.accdb",其中存在设计好的表对象"tStud"和查询对象"qStud",同时还设计出以"qStud"为数据源的报表对象"rStud"。请在此基础上按照以下要求补充报表设计:(1)在报表的报表页眉节区添加一个标签控件,名称为"bTitle",标题为"97年入学学生信息表"。(2)在报表的主体节区添加一个文本框控件,显示"姓名"字段值。该控件放置在距上边0.1厘米、距左边3.2厘米的位置,并命名为"tName"。(3)在报表的页面页脚节区添加一个计算控件,显示系统年月,显示格式为:××××年××月(注意,不允许使用格式属性)。计算控件放置在距上边0.3厘米、距左边10.5厘米的位置,并命名为"tDa"。=Str(Year(Date()+'年'+Str(Month(Date()+'月'(4)按"编号"字段的前4位分组统计每组记录的平均年龄,并将统计结果显示在组页脚节区。计算控件命名为"tAvg"。(=Avg(tStud!年龄))注意:不能修改数据库中的表对象"tStud"和查询对象"qStud",同时也不允许修改报表对象"rStud"中已有的控件和属性。第二套一、基本操作题在考生文件夹下有数据库文件"samp1.accdb"和Excel文件"Stab.xls","samp1.accdb"中已建立表对象"student"和"grade",请按以下要求,完成表的各种操作:(1)将考生文件夹下的Excel文件"Stab.xls"导入到"student"表中。(2)将"student"表中1975年到1980年之间(包括1975年和1980年)出生的学生记录删除。(筛选后删除)(3)将"student"表中"性别"字段的默认值设置为"男"。(4)将"student"表拆分为两个新表,表名分别为"tStud"和"tOffice"。其中"tStud"表结构为:学号,姓名,性别,出生日期,院系,籍贯,主键为学号;"tOffice"表结构为:院系,院长,院办电话,主键为"院系"。要求:保留"student"表。(注意删除重复记录)(5)建立"student"和"grade"两表之间的关系。二、简单应用题考生文件夹下有一个数据库文件"samp2.accdb",其中存在已经设计好的一个表对象"tTeacher"。请按以下要求完成设计:(1)创建一个查询,计算并输出教师最大年龄与最小年龄的差值,显示标题为"m_age",将查询命名为"qT1"。(2)创建一个查询,查找并显示具有研究生学历的教师的"编号"、"姓名"、"性别"和"系别"4个字段内容,将查询命名为"qT2"。(3)创建一个查询,查找并显示年龄小于等于38、职称为副教授或教授的教师的"编号"、"姓名"、"年龄"、"学历"和"职称"5个字段,将查询命名为"qT3"。(4)创建一个查询,查找并统计在职教师按照职称进行分类的平均年龄,然后显示出标题为"职称"和"平均年龄"的两个字段内容,将查询命名为"qT4"。三、综合应用题考生文件夹下有一个数据库文件"samp3.accdb",其中存在已经设计好的表对象"tEmployee"和"tGroup"及查询对象"qEmployee",同时还设计出以"qEmployee"为数据源的报表对象"rEmployee"。请在此基础上按照以下要求补充报表设计:(1)在报表的报表页眉节区添加一个标签控件,名称为"bTitle",标题为"职工基本信息表"。(2)在"性别"字段标题对应的报表主体节区距上边0.1厘米、距左侧5.2厘米的位置添加一个文本框,用于显示"性别"字段值,并命名为"tSex"。(3)设置报表主体节区内文本框"tDept"的控件来源为计算控件。要求该控件可以根据报表数据源里的"所属部门"字段值,从非数据源表对象"tGroup"中检索出对应的部门名称并显示输出。(提示:考虑DLookup函数的使用。)(=DLookUp('名称','tGroup',"部门编号='03'") =DLookUp('名称','tGroup',"部门编号=所属部门")注意:不能修改数据库中的表对象"tEmployee"和"tGroup"及查询对象"qEmployee";不能修改报表对象"qEmployee"中未涉及的控件和属性。第三套一、基本操作题(1)在考生文件夹下的"samp1.mdb"数据库中建立表"tTeacher",表结构如下:格式字段名称数据类型字段大小编号文本5姓名文本4性别文本1年龄数字整型工作时间日期/时间短日期学历文本5职称文本5邮箱密码文本6联系电话文本8在职否是/否是/否(2)根据"tTeacher"表的结构,判断并设置主键。(3)设置"工作时间"字段的有效性规则为:只能输入上一年度五月一日以前(含)的日期(规定:本年度年号必须用函数获取)。 <=DateSerial(Year(Date()-1),5,1)(4)将"在职否"字段的默认值设置为真值,设置"邮箱密码"字段的输入掩码为将输入的密码显示为6位星号(密码),设置"联系电话"字段的输入掩码,要求前4位为"010-",后8位为数字。 输入掩码(密码)(5)将"性别"字段值的输入设置为"男"、"女"列表选择。(查阅-下拉列表框)(6)在"tTeacher"表中输入以下两条记录:二、简单应用题考生文件夹下有一个数据库文件"samp2.mdb",其中存在已经设计好的两个表对象"tEmployee"和"tGroup"。请按以下要求完成设计:(1)创建一个查询,查找并显示没有运动爱好的职工的"编号"、"姓名"、"性别"、"年龄"和"职务"5个字段内容,将查询命名为"qT1"。 Not Like "*运动*"(2)建立"tGroup"和"tEmployee"两表之间的一对多关系,并实施参照完整性。(3)创建一个查询,查找并显示聘期超过5年(使用函数)的开发部职工的"编号"、"姓名"、"职务"和"聘用时间"4个字段内容,将查询命名为"qT2"。Year(Date()-Year(tEmployee!聘用时间)>=5(4)创建一个查询,检索职务为经理的职工的"编号"和"姓名"信息,然后将两列信息合二为一输出(比如,编号为"000011"、姓名为"吴大伟"的数据输出形式为"000011吴大伟"),并命名字段标题为"管理人员",将查询命名为"qT3"。三、综合应用题考生文件夹下有一个数据库文件"samp3.mdb",其中存在已经设计好的窗体对象"fTest"及宏对象"ml"。请在此基础上按照以下要求补充窗体设计:(1)在窗体的窗体页眉节区添加一个标签控件,名称为"bTitle",标题为"窗体测试样例"。(2)在窗体主体节区添加两个复选框选控件,复选框选项按钮分别命名为"opt1"和"opt2",对应的复选框标签显示内容分别为"类型a"和"类型b",标签名称分别为"bopt1"和"bopt2"。(3)分别设置复选框选项按钮opt1和opt2的"默认值"属性为假值。(注意-1和0)(4)在窗体页脚节区添加一个命令按钮,命名为"bTest",按钮标题为"测试"。(5)设置命令按钮bTest的单击事件属性为给定的宏对象m1。(6)将窗体标题设置为"测试窗体"。注意:不能修改窗体对象fTest中未涉及的属性;不能修改宏对象m1。第四套一、基本操作题在考生文件夹下,存在一个数据库文件“samp1.accdb”、一个Excel文件“tScore.xls”和一个图像文件“photo.bmp”。在数据库文件中已经建立了一个表对象“tStud”。试按以下操作要求,完成各种操作:(1)设置“ID”字段为主键;并设置“ID”字段的相应属性,使该字段在数据表视图中的显示标题为“学号” ; 标题属性(2)将“性别”字段的默认值属性设置为“男”,设置“入校时间”字段的相关属性,使该字段的输入格式为“XXXX/XX/XX”,例如,2013/06/08; yyyy/mm/dd(3)设置“入校时间”字段的有效性规则和有效性文本。有效性规则为:输入的入校时间必须为9月;有效性文本内容为“输入的月份有误,请重新输入”;Month(入校时间)=9(4)将学号“20041002”学生的“照片”字段值设置为考生文件夹下的“photo.bmp”图像文件(要求使用“由文件创建”方式); 插入对象(5)设置“政治面目”字段的输入方式为从下拉列表中选择“团员”、“党员”和“其他”选项值; (查阅-下拉列表框)注意符号(6)将考生文件夹下的“tScore.xls”文件导入到“samp1. accdb”数据库文件中,表名不变,主键为表中的“ID”字段。二、简单应用题考生文件夹下存在一个数据库文件“samp2.accdb”,里面已经设计好三个关联表对象“tStud”、“tScore”和“tCourse”,试按以下要求完成设计:(1)创建一个查询,查找年龄高于平均年龄的党员记录,并显示“姓名”、“性别”和“入校时间”。所建查询命名为“qT1”。 嵌套查询年龄>(SELECT AVG(年龄) FROM tStud)(2)创建一个查询,按输入的成绩区间查找,并显示“姓名”、“课程名”和“成绩”。当运行该查询时,应分别显示提示信息:“最低分”和“最高分”。所建查询命名为“qT2”。条件:>最低分 <最高分(3)创建一个查询,统计并显示各门课程男女生的平均成绩,统计显示结果如下图所示。所建查询命名为“qT3”。要求:平均分结果用Round函数取整输出。 交叉表:Round(Avg(成绩),0)(4)创建一个查询,运行该查询后生成一个新表,表名为“tTemp”,表结构包括“姓名”、“课程名”和“成绩”等三个字段,表内容为不及格的所有学生记录。所建查询命名为“qT4”。要求创建此查询后,运行该查询,并查看运行结果。三、综合应用题考生文件夹下存在一个数据库文件“samp3.accdb”,里面已经设计好表对象“tStud”,同时还设计出窗体对象“fStud”。请在此基础上按照以下要求补充“fStud”窗体的设计:(1)在窗体的“窗体页眉”中距左边1.2厘米、距上边1.2厘米处添加一个直线控件,控件宽度为7.8厘米,边框颜色改为“蓝色”(蓝色代码为#0000FF),控件命名为“tLine”;(2)将窗体中名称为“lTalbel”的标签控件上的文字颜色改为“蓝色”(蓝色代码为#0000FF)、字体名称改为“华文行楷”、字号改为22;(3)将窗体边框改为“细边框”样式,取消窗体中的水平和垂直滚动条、记录选择器、导航按钮和分隔线;并且只保留窗体的关闭按钮;(4)假设“tStud”表中,“学号”字段的第5位和6位编码代表该生的专业信息,当这两位编码为“10”时表示“信息”专业,为其他值时表示“管理”专业。设置窗体中名称为“tSub”的文本框控件的相应属性,使其根据“学号”字段的第5位和第6位编码显示对应的专业名称; =IIf(Mid(学号,5,2)=10,"信息","管理")(5)在窗体中有一个“退出”命令按钮,名称为“CmdQuit”,单击该按钮,弹出提示框。提示框标题为“提示”,提示框内容为“确认退出?”,并显示问号图标;提示框中有两个按钮,分别为“是”和“否”,单击“是”按钮,关闭消息框和当前窗体,单击“否”按钮,关闭消息框。请按照VBA代码中的指示将实现此功能的代码填入指定的位置中。If MsgBox("确认退出?", 36, "提示") = vbYes Then注意:不允许修改窗体对象“fStud”中未涉及的控件、属性和任何VBA代码;不允许修改表对象“tStud”;程序代码只允许在“*Add*”与“*Add*”之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。6句语语已位位其和许许设、语语一内间* *“* *许允” 象修修不代 何何、的涉涉 象对修修 示提 退确 中位位指码码能此此示中码码照。消关关”击体体当框闭闭按是,否是是为钮两框框;号号问,出确确为提提示提框框提提,按按单 称称钮命退一窗窗""管""00 ,号( 称称的对编第 段段”学使使属相控文文 名体置专专“时值值业专专示表0为为这当业业生代 段号,表表 假假钮钮关关保且隔隔钮导器器录条垂平平中取,”为为边将 改改楷楷华改名、 0码代代”“颜文控控的 名名窗” 为控 0#代(色改颜颜,. 件件控个添厘厘 上米米 距眉眉体的在计计的的” 求下照照此。 象体体设,” 对好已里里 件数在夹夹用用用果结看询询行,查创创” 名命所所生所格格为表个个等“”课名名括结, 表表表成生生行运一创创0)成( 交交 取 果均均求。 名查查所所示下结,均均的的女各并并,查创分最最 低>>件件”“为为建”高“最“示显,查查运”绩和课、姓显显间成输输,查 ( (龄年年查 名查查。时时入和和、名示录录党年于于年查查个创计计成要按按, 和 “ 象象关好计面面 . 件库一一下件用应应段字字“中键键变,文文数 “入 . “件件生符符注)下下查( 值值项他他”“员择择表拉为为输字”政对对入;方创文文用用(像图图 夹文置置段字照照生 将=校入入 ;入重重,份“内内文;为间校校入:效有文和和性的”校校置 / 00/0 ”/ 为入入段使,的的”时“”“置置值段”将将属属 ”“标的的图数在使属属段段” ;键段 作种种成成要操试 象个个了经件件据” “个个” 件 、” 文文数个,文作本四 象象改能属属的中 对对改不"""测测置体 象的的为属击击 令令置置"测为为钮 为,令令一区页窗00和注值值假假"" 钮选选置分分" " 分名,类"类类为分签框应应"" "名名分选选选控选选两加加节在"""体","" 为名名签一一加页页的窗计计设窗下按基基在。象及 对对的计在存,. "件件数一夹用合合"""为名名,员管题题名并并) 0""形据"吴吴名""00号号,比比一合两然然信"""编的的理职,查创=>间间 ) ( "命命询内内字间用用""名""编的的部)数年年过聘聘找,一性性完参并并系的表表" """ "*运 。 为为询将段段个个务"""别"""""职好好有示找找询建建计设完完下。 " 象两计计已中中" ""数有件件用用录录条下中中 在在框表下下(。列、"设入入值别别将码(码 数 -0为为前前码入字电电联置码( 显入将将码段码码密设真设设值字""" ) ( <。取数号年定定规规)(日度度上入入为性有有段间""键置并并,结 据据/职文文电文密密文职职文学日日时时整数数年文文性文姓文编编大类名名格下下构, 表表中"" 的文在在作本三性性和的及及" 象报; 询 """ ""象象中数能""门所号, '名名( "" 编部'' 称称( 。的的函 虑虑示。示示并名对对索中 对据据从段部""里数数根件该要要计来的 "区区节置置" 为值"性性显,个添添置 侧左米米0距距体的题题字""""本本职标" "称件标标添添眉报表计表表报要要以础础在 "象象的为 "设设同 ""询" "" "好好经在中中 文据有有夹用用应"" "命命,段两两的均"""标示,年年的进进照教计计找查查查创""""询,字"和和学""龄名、编编的授授授副、 小龄龄找,个建建" 询将段 系和和"名、编编师师历生具具并查查查创"""询询将 题题标差龄与大大师出计计询询创计设求下下" 表一计在其其" 据个个夹用单单系的间间 和 "建建录复复删注表 留求求。""为,长:构" 号号键,出性性名学为为表 。 " 名,两两分分表 "男男设值字字别别中" "除除除筛除记生出出 年 包之之 到年中中"" 将将中中 到入入 ""件 的的文考作作作的,下以 " 对对已" """. 文 件数数夹作本二性性和和的有 象报许不不" 询询" 对对库改不不)! ( " 件控控。页页示结将年均均记每组组的的字编月'') ( 年+( ( "" "并置置厘0左距距.上上置控算属格格允意(年××:格显系系,件件个区区脚页表表"" 为,位米米边距距厘.在在放控字名名显件件本加节节主在"息学学学学 标 "名名,个添添区页表计计表补要要按础础请" "报报源源" "出出还同同 "询询和 ""表计在在其 ""数有件件用合果行行查询询行,询询求" 名查,序降并并录有格格不分包上00容容,五""成名课课性"姓"学学结, "表表个生后后行查一一)0绩绩( (成成对函函 用" "询询所)做他许许允允表立建建设用:(所结计绩绩平课课每示计查查叉叉建:较入( 为为命查信信"平""学显息的的输分均课课学学询该分较较要"分分较输:示示示,询行行询一创"" 为询查查信三三时""别"姓显显记员员询个创创计设完完以, " "" 对计已已," "库在在夹用单单藏消(来来显"号号藏中中据0000-显显数00为出自自部 "。的* "设设入段话增 为,型型型话电名名个增字"""""长""索索有为字姓姓将""份""示的视视数段性性属的 身置置键字 ""设" 为为表况况基"作种种各各,下根根"本"对对一经经中库数 件数数有件作作作一6