Access数据库程序设计

考试试题

[问答题]考生文件夹下存在一个数据库文件"samp3.mdb"。"samp3.mdb"数据库里面已经设计了表对象"tEmp"和"tGroup"、窗体对象"fEmp"、报表对象"rEmp"和宏对象"mEmp"。试在此基础上按照以下要求补充设计:(1)设置报表"rEmp"的相关属性,使其显示年龄小于30岁(不含30)、职务为"职员"的女职工记录。设置报表主体节区内"tName"文本框控件的显示内容为"姓名"字段值。(2)将报表"rEmp"主体节区内文本框"tDept"的控件来源属性设置为计算控件。要求该控件可以根据报表数据源中的"所属部门"字段值,从非数据源表对象"tGroup"中检索出对应的部门名称并显示输出。在适当位置增加一个计算控件(命名为tAvg),计算并显示每个部门的平均年龄。说明:适当位置是指组页脚、页面页脚或报表页脚。   提示:考虑使用Dlookup函数。   (3)设置窗体"fEmp"的窗体标题为"职员基本情况查询";将宏"mEmp"重命名为自动执行的宏。(4)在"fEmp"窗体的窗体页眉节上有一个文本框(名为"txtName")和一个命令按钮(名为"cmdQuery")。在文本框中输入职员姓名后,单击"cmdQuery"命令按钮,调用事件代码将依据输入的姓名在"tEmp"表中进行查找,并将找到的信息添加到主体节相应文本框中,如果没有找到将显示提示信息"对不起,没有这个职员!";如果在"txtName"文本框中未输入姓名,单击"cmdQuery"命令按钮后,将显示提示信息"对不起,未输入职员姓名,请输入!"。根据上述功能描述,按照VBA代码指示,将代码补充完整。  注意:不允许修改数据库中的表对象"tEmp"和"tGroup";不允许修改宏对象"mEmp"里的内容;不允许修改窗体对象"fEmp"和报表对象"rEmp"中未涉及的控件和属性。已给事件过程,只允许在"*****Add*****"与"*****Add*****"之间的空行内补充一条语句、完成设计,不允许增删和修改其它位置已存在的语句。
[问答题]在考生文件夹下,存在一个数据库文件"samp1.mdb" ,里边已经设计好了表对象"tDoctor"、"tOffice"、"tPatient"和"tSubscribe",同时还设计了窗体象"fSubscribe"。试按以下操作要求,完成各种操作:   (1)分析"tSubscribe"预约数据表的字段构成,判断并设置其主键。设置" 科室ID"字段的字段大小,使其与"tOffice"表中相关字段的字段大小一致。删除医生"专长"字段。   (2)设置"tSubscribe"表中"医生ID"字段的相关属性,使其输入的数据只能为第1个字符为"A",从第2个字符开始后三位只能是0~9之间的数字,并设置该字段为必填字段。设置"预约日期"字段的有效性规则为:只能输入系统时间以后的日期。   要求:使用函数获取系统时间。   (3)设置"tDoctor"表中"性别"字段的默认值为"男",并设置该字段值的输入方式为从下拉列表中选择"男"或"女"选项值。设置"年龄"字段的有效性规则和有效性文本,有效性规则为:输入年龄必须在18岁至60岁之间(含18岁和60岁),有效性文本内容为:"年龄应在18岁到60岁之间"。   (4)设置"tDoctor"表的显示格式,使表的背景颜色为"褐色2",网格线为"黑色"。设置数据表中显示所有字段。  (5)通过相关字段建立"tDoctor"、"tOffice"、"tPatient"和"tSubscribe"等四表之间的关系,并实施参照完整性。   (6)将窗体"fSubscribe"主体节区内文本框"tDept"和"tDoct"的控件来源属性设置为计算控件。要求该控件可以根据窗体数据源里的"科室ID"和"医生ID"字段值,分别从非数据源表对象"tPatient"和"tDoctor"中检索出对应的科室名称和医生姓名并显示输出。     提示:考虑使用DLookup函数。
[问答题]考生文件夹下存在一个数据库文件“samp3.accdb”,里面已经设计好表对象“tStud”、窗体对象“fSys”和报表对象“rStud”。请在此基础上按照以下要求补充“fSys”窗体和“rStud”报表的设计:(1)在“rStud”报表的报表页眉节区位置添加一个标签控件,其名称为“rTitle”,其显示文本为“非团员基本信息表”;将报表标题栏上的显示文本设置为“非团员信息”;将名称为“tSex”的文本框控件的输出内容设置为“性别”字段值。在报表页脚节区添加一个计算控件,其名称为“tCount”,显示报表学生人数。(2)将“fSys”窗体的边框样式设置为“细边框”,取消窗体中的水平和垂直滚动条、导航按钮、记录选择器、分隔线、最大化按钮和最小化按钮。(3)将“fSys”窗体中“用户名称”(名称为“lUser”)和“用户口令”(名称为“lPass”)两个标签上的文字颜色改为红色(红色代码为#FF0000)、字体粗细改为“加粗”。(4)将“fSys”窗体中名称为“tPass”的文本框控件的内容以密码形式显示;将名称为“cmdEnter”的命令按钮从灰色状态设为可用;将控件的Tab移动次序设置为:“tUser”→“tPass” →“cmdEnter” →“cmdQuit”。(5)试根据以下窗体功能和报表输出要求,补充已给事件代码,并运行调试。在窗体中有“用户名称”和“用户密码”两个文本框,名称分别为“tUser”和“tPass”,还有“确定”和“退出”两个命令按钮,名称分别为“cmdEnter”和“cmdQuit”。 窗体加载时,重置“bTitle”标签的标题为“非团员人数为XX”,这里XX为从表查询计算得到;在输入用户名称和用户密码后,单击“确定”按钮,程序将判断输入的值是否正确,如果输入的用户名称为“csy”,用户密码为“1129”,则显示提示框,提示框标题为“欢迎”,显示内容为“密码输入正确,打开报表!”,单击“确定”按钮关闭提示框后,打开“rStud”报表,代码设置其数据源输出非团员学生信息;如果输入不正确,则提示框显示“密码错误!”,同时清除“tUser”和“tPass”两个文本框中的内容,并将光标移至“tUser”文本框中。当单击窗体上的“退出”按钮后,关闭当前窗体。以上涉及计数操作统一要求用“*”进行。注意:不允许修改报表对象“rStud”中已有的控件和属性;不允许修改表对象“tStud”。不允许修改窗体对象“fSys”中未涉及的控件、属性和任何VBA代码;只允许在“*****Add*****”与“*****Add*****”之间的空行内补充一条代码语句、不允许增删和修改其它位置已存在的语句。
[问答题]考生文件夹下,已有“samp0.accdb”和“samp1.accdb”数据库文件。“samp0.accdb”中已建立表对象“tTest”,“samp1.accdb”中已建立表对象“tEmp”和“tSalary”。试按以下要求,完成表的各种操作。(1)根据“tSalary”表的结构,判断并设置主键;将“tSalary”表中的“工号”字段的字段大小设置为8。(2)将“tSalary”表中的“年月”字段的有效性规则设置为只能输入本年度10月1日以前(不含10月1日)的日期(要求:本年度年号必须用函数获取); 将表的有效性规则设置为输入的水电房租费小于输入的工资。(3)在“tSalary”表中增加一个字段,字段名为“百分比”,字段值为: 百分比 = 水电房租费 / 工资,计算结果的“结果类型”为“双精度型”,“格式”为“百分比”,“小数位数”为2。(4)将表“tEmp”中“聘用时间”字段改名为“聘用日期”;将“性别”字段值的输入设置为“男”、“女”列表选择;将“姓名”和“年龄”两个字段的显示宽度设置为20;将善于交际的职工记录从有关表中删除;隐藏“简历”字段列。(5)完成上述操作后,建立表对象“tEmp”和“tSalary”的表间一对多关系,并实施参照完整。(6)将考生文件夹下“samp0.accdb”数据库文件中的表对象“tTest”链接到“samp1.accdb”数据库文件中,要求链接表对象重命名为tTemp。
[问答题]考生文件夹下存在一个数据库文件“samp3.accdb”,里面已经设计了表对象“tEmp”、查询对象“qEmp”、窗体对象“fEmp”、报表对象“rEmp”和宏对象“mEmp”。试在此基础上按照以下要求补充设计:(1)消除报表的“性别”排序,重新按照职工姓氏进行排列,并在合适页脚区域添加一个文本框控件(命名为tmAge),输出不同姓氏职工的最小年龄值。说明:这里不考虑复姓情况。(2)将报表页面页脚区域内名为“tPage”的文本框控件设置为“页码/总页数”形式的页码显示(如1/35、2/35、...)。(3)将“fEmp”窗体上名为“bTitle”的标签上移到距“btnP”命令按钮0.5厘米的位置(即标签的下边界距命令按钮的上边界0.5厘米)。同时,将窗体按钮“btnP”的单击事件属性设置为宏“mEmp”。(4)在“fEmp”窗体的左侧有一个名称为“COMBO1”的组合框和两个名称分别为“btitle1”、“btitle2”的标签。“btitle1”标签用于显示组合框左侧的标题内,“btitle2”标签用于显示计算的平均年龄。“COMBO1”组合框中列出性别值“男”和“女”,当在组合框中选择某一性别值后,计算该性别的平均年龄,并将计算的结果显示在“btitle2”标签中,显示内容及格式如下图所示。请按照VBA代码中的指示将代码补充完整。注意:不允许修改数据库中的宏对象“mEmp”;不允许修改窗体对象“fEmp”和报表对象“rEmp”中未涉及的控件和属性;不允许修改表对象“tEmp”和查询对象“qEmp”中未涉及的字段和属性。程序代码只允许在“*******Add******”与“*******Add******”之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。
[问答题]考生文件夹下存在一个数据库文件“samp3.accdb”,里面已经设计好表对象“tCollect”,同时还设计出以“tCollect”为数据源的窗体对象“fCollect”。 试在此基础上按照以下要求补充窗体设计:(1)将窗体“fCollect”的记录源设置为根据输入的“CDID”,查找“CDID”、“主题名称”、“价格”、“购买日期”、“出版单位ID”和“介绍”等字段的数据。注意:输入提示参数为“请输入CDID:”。(2)在窗体“fCollect”的窗体页眉节区位置添加一个标签控件,其名称为“bTitle”,标题显示为“CD明细”,字体名称为“黑体”,字号为14,字体粗细为“加粗”。(3)打开窗体时,将窗体标题栏上的显示文字设为“CD明细显示”,请按照VBA代码中的指示将代码补充完整。要求:①显示文字中的“CD明细”使用“bTitle”标签控件的内容。      ②将程序代码填写在“*******Add******”与“*******Add******”之间的空行内,只允许补充一行语句。(4)在窗体页脚节区位置添加一个命令按钮,命名为“bC”,按钮标题为“改变颜色”;设置所建命令按钮bC的单击事件,使用户单击该命令按钮后,将标签“CDID_标签”的文字显示颜色改为红色。要求用VBA代码实现。注意:不允许修改窗体对象“fCollect”中未涉及的控件和属性;不允许修改表对象“tCollect”。
[问答题]考生文件夹下存在一个数据库文件"samp3.mdb",里面已经设计好表对象"tStud",同时还设计出窗体对象"fStud"。请在此基础上按照以下要求补充"fStud"窗体的设计:  (1)在窗体的"窗体页眉"中距左边0.4厘米、距上边1.2厘米处添加一个直线控件,控件宽度为10.5厘米,控件命为"tLine";将窗体中标签件"lTalbel"上的文字改为"隶书",字号改为18。  (2)打开窗体时,窗体标题自动显示为标签控件"lTalbel"的内容,并且自动将该控件上的文字颜色改为"蓝色",请按照VBA代码中的指示将代码补充完整。  (3)将窗体边框改为"细边框"样式,取消窗体中的水平和垂直滚动条、记录选择器、导航按钮和分隔线;并且只保留窗体的关闭按钮。  (4)假设"tStud"表中"学号"字段的第5位和第6位编码代表该生的专业信息,当这两位编码为"10"时表示"信息"专业,为其他值时表示"管理"专业。设置窗体中名称为"tSub"文本框控件的相应属性,使其根据"学号"字段的第5位和第6位编码显示对应的专业名称。 (5)在窗体中有一个"退出"命令按钮,名称为"CmdQuit",其功能为关闭"fStud"窗体。请按照VBA代码中的指示将实现此功能的代码补充完整。    注意:不允许修改窗体对象"fStud"中未涉及的控件、属性和任何VBA代码;不允许修改表对象"tStud";程序代码只允许在"*****Add*****"与"*****Add*****"之间的空行内补充一行语句完成设计,不允许增删和修改其它位置已存在的语句。