Access数据库程序设计

考试试题

[问答题]考生文件夹下有一个数据库文件"samp3.accdb",里面已经设计好表对象"产品"、"供应商"、查询对象"按供应商查询",窗体对象"characterS"和宏对象"打开产品表"、"运行查询"、"关闭窗口"。试按以下要求完成设计:1. 创建一个名为"menu"的窗体,要求如下:(1)对窗体进行如下设置:在距窗体左边1厘米、距上边0.6厘米处依次水平放置三个命令按钮"显示产品表"(名为"bt1")、"查询"(名为"bt2")和"退出"(名为"bt3"),命令按钮的宽度均为2厘米,高度为1.5厘米,每个命令按钮相隔1厘米。(2)设置窗体标题为"主菜单"。(3)当单击"显示产品表"命令按钮时,运行宏"打开产品表",就可以浏览"产品"表;当单击"查询"命令按钮时,运行宏"运行查询",即可启动查询"按供应商查询";当单击"退出"命令按钮时,运行宏"关闭窗口",关闭"menu"窗体。2. 窗体"characterS"中有两个文本框,名称分别为"bTxt1"和"bTxt2",还有一个命令按钮,名称为"bC"。窗体功能为:单击"bC"按钮将"bTxt1"文本框中已输入的字符串反向显示在"bTxt2"文本框中。请按照VBA代码中的指示将代码补充完整。    注意:不允许修改数据库中的表对象"产品"、"供应商"、查询对象"按供应商查询"和宏对象"打开产品表"、"运行查询"、"关闭窗口";不允许修改窗体对象"characterS"中未涉及的控件和属性。程序代码只允许在"*******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*****"之间的空行内补充一条语句、完成设计,不允许增删和修改其它位置已存在的语句。
[问答题]考生文件夹下存在一个数据库文件“samp3.accdb”,里面已经设计了表对象“tEmp”、窗体对象“fEmp”、报表对象“rEmp”和宏对象“mEmp”。同时,给出窗体对象“fEmp”的若干事件代码,试按以下功能要求补充设计。(1)设置系统相关属性,实现打开的窗体以重叠窗口形式显示;设置窗体对象“fEmp”上两个命令按钮的Tab键索引顺序(即Tab键焦点移动顺序)为从“报表输出”按钮(名为“bt1”)到“退出”按钮(名为“bt2”)。(2)调整窗体对象“fEmp”上的“退出”按钮(名为“bt2”)的大小和位置,要求大小与“报表输出”按钮(名为“bt1”)一致,且上边对齐“报表输出”按钮,左边距离“报表输出”按钮1厘米(即“bt2”钮的左边距离“bt1”钮的右边1厘米)。(3)将报表记录数据按照先姓名升序再年龄降序排列显示;设置相关属性,将页面页脚区域内名为“tPage”的文本框控件实现以下格式的页码输出: “1/20”,“2/20”,...,“20/20”。(4)加载窗体时,代码将“bTitle”标签的标题重置为“员工最大年龄差为XXX”,其中“XXX”是从“tEmp”表中获取计算得到;单击“报表输出”按钮,事件代码会弹出下图显示的消息框,以选择是否进行预览报表“rEmp”;单击“退出”按钮,调用设计好的宏“mEmp”来关闭窗体。根据以上描述,将VBA代码补充完整。  注意:不允许修改数据库中的表对象“tEmp”和宏对象“mEmp”;不允许修改窗体对象“fEmp”和报表对象“rEmp”中未涉及的控件和属性。  程序代码只允许在“*****Add*****”与“*****Add*****”之间的空行内补充一行语句、完成设计,不允许增删和修改其它位置已存在的语句。
[问答题]在考生文件夹下,已有"samp1.mdb"数据库文件和"tCourse.xlsx"文件,"samp1.mdb"中已建立表对象"tStud"和"tGrade",试按以下要求,完成表的各种操作:   (1) 将考生文件夹下的"tCourse.xlsx"文件导入到"samp1.mdb"数据库中,表名不变;按下图所示内容修改"tCourse"表的结构;根据"tCourse"表字段构成,判断并设置主键。(2) 设置"tCourse"表"学时"字段的有效性规则为:必须输入非空且大于等于0的数据;设置"开课日期"字段的默认值为本年度九月一日(要求:本年度年号必须由函数获取)。设置表的格式为:浏览数据表时,"课程名称"字段列不能移出屏幕,且网格线颜色为黑色。   (3) 设置"tStud"表"性别"字段的输入方式为从下拉列表中择"男"或"女"选项值;设置"学号"字段的相关属性为:只允许输入8位 的0-9数字;将姓名中的"小"改为"晓"。   (4) 将"tStud"表中"善于表现自己"的学生记录删除;设置表的有效性规则为:学生的出生年份应早于(不含)入校年份;设置表的有效性文本为:请输入合适的年龄和入校时间。     要求:使用函数获取有关年份。   (5) 在"tGrade"表中增加一个字段,字段名为"总评成绩",字段值为:总评成绩 = 平时成绩*40% + 考试成绩*60%计算结果的"结果类型"为"整型","格式"为"标准","小数位数"为0。  (6) 建立三表之间的关系。