Access数据库程序设计

考试试题

[问答题]考生文件夹下存在一个数据库文件"samp3.mdb",里面已经设计了两个表对 象"tEmp"和"tGroup",同时还设计了窗体对象"fEmp"、报表对象"rEmp"和宏对象"mEmp",试按以下功能要求补充设计。(1)将报表"rEmp"中的记录数据按姓氏分组升序排列,并在相关的组页眉节区域添加一个文本框控件(命名为"tNum"),计算并显示各姓氏员工的人数。注意:这里不需考虑复姓情况。所有姓名的第一个字符视为其姓氏信息。  要求:使用分组表达式进行分组;用"编号"字段统计各姓氏人数。(2)将报表"rEmp"主体节区内文本框"tDept"的控件来源属性设置为计算控件。要求该控件可以根据报表数据源里的"所属部门"字段值,从非数据源表对象"tGroup"中检索出对应的部门名称并显示输出。提示:考虑使用DLookup函数。(3)设置相关属性,将"fEmp"窗体的整个背景显示为考生文件夹内的图像文件"bk.bmp"。在窗体加载事件中设置窗体标题为显示"××年度报表输出"。说明:"××"为两位的当前年显示。要求:当前年的年份使用相关函数获取。(4)在"fEmp"窗体中单击"报表输出"按钮(名为"bt1"),调用事件代码先将"退出"按钮标题设为粗体显示,再以预览方式打开报表"rEmp",请按VBA代码指示将代码补充完整。设置"退出"按钮(名为"bt2")的相关事件,当单击该按钮时,调用设计好的宏"mEmp"来关闭窗体。注意:不允许修改数据库中的表对象"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.mdb",里面已经设计好表对象"tStudent",同时还设计出窗体对象"fQuery"、"fStudent"和"fCount"。请在此基础上按照以下要求补充"fQuery"和"fCount"窗体的设计: (1)加载"fQuery"时重置窗体标题改为"显示查询信息",将窗体中"退出"命令按钮(名称为"命令7")上显示的文字颜色自动改为红色(红色值为255),字体粗细改为"加粗"(加粗值为700)。 请按照VBA代码中的指示将实现此功能的代码补充完整。  (2)在"fQuery"窗体距主体节上边0.4厘米、左边0.4厘米位置添加一个矩形控件,其名称为"rRim";矩形宽度为16.6厘米、高度为1.2厘米、特殊效果为"凿痕"。将窗体边框改为"对话框边框"样式,取消窗体中的水平和垂直滚动条、记录选择器、导航按钮和分隔线。(3)在"fQuery"窗体中有一个"显示全部记录"命令按钮(名称为bList),单击该按钮后,应实现将"tStudent"表中的全部记录显示出来的功能。现已编写了部分VBA代码,请按照VBA代码中的指示将代码补充完整。要求:修改后运行该窗体,并查看修改结果。  (4)在"fCount"窗体中有两个列表框、一个文本框和一个命令按钮,名称分别为"List0"、"List1"、"tData"和"Cmd"。在"tData"文本框中输入一个数,单击"Cmd"按钮,程序将判断输入的值是奇数还是偶数,如果是奇数将填入"List0"列表中,否则填入"List1"列表中。根据以上描述,请按照VBA代码中的指示将代码补充完整。注意:不允许修改窗体对象"fQuery"、"fStudent"和"fCount"中未涉及的控件、属性;不允许修改表对象"tStudent"。程序代码只允许在"***** Add *****"与"***** Add *****"之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。
[问答题]考生文件夹下存在一个数据库文件"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*****"之间的空行内补充一行语句完成设计,不允许增删和修改其它位置已存在的语句。
[问答题]考生文件夹下存在一个数据库文件"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*****"之间的空行内补充一条语句、完成设计,不允许增删和修改其它位置已存在的语句。