版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
./Access数据库应用实例——图书借阅管理系统本"图书借阅管理系统"是以实现图书馆借阅工作系统化为目的和背景而设计开发的一个简单系统。图书借阅管理系统主要实现对图书馆工作的信息化管理。本系统实现了对图书的基本信息和会员〔图书借阅者〕的基本信息的登记、保存、统计和查询等功能,另外还对会员的借阅信息进行了登记、保存、统计并能查询,同时实现了对图书的数据化管理。很大程度上实现了图书馆图书借阅工作的信息化管理。一、系统总体分析与设计根据图书馆借阅场景中为方便图书管理人员工作的需求,"图书借阅管理系统"可以分为对图书的管理、对会员的管理、对借阅过程的管理和对系统的维护等几方面。图书管理:主要包括对图书基本信息、图书存放位置、图书进出库情况等数据的记录、统计和查询,以方便图书管理人员的工作。会员管理:主要包括新增会员、会员资料查询和会员的借书、续借、还书和超期情况的查询等。借阅过程管理:主要包括对图书每日借阅情况的记录、统计和查询,根据不同等级会员借书册数的限制和不同图书限借天数的限制等对图书借阅进行管理。系统维护:主要包括系统数据维护〔如:会员信息数据和图书信息数据〕和系统数据备份与还原。以实现上述需求为目标,经过全面分析,我们可以初步将整个系统划分为"数据管理"、"借阅管理"、"数据查询"、"每日统计"和"系统维护"五个子模块,通过分别实现各个子模块的功能来实现整个系统的整体功能。各模块功能如下:数据管理:包括对图书和会员基本信息数据的管理,这两块又可细分基本信息管理和等级限制设置。本模块主要实现记录浏览、记录增加、记录修改、记录删除和记录打印等功能。借阅管理:本模块是整个系统的最核心部分,图书借阅管理系统的核心功能基本全部在该模块体现——"借书"、"续借"、"还书"、"罚款缴纳"。该模块对会员借阅图书的全过程进行管理。数据查询:包括图书查询、会员查询、借阅超期查询、借阅记录查询。通过该模块能够实现对图书信息、会员信息、超过借阅期限而未归还的图书、每本图书与每个读者的历史借阅情况等的查询。每日统计:包括统计当天借出的图书、续借的图书、归还的图书、到期该归还的图书和新入库的图书等。系统维护:包括对系统数据库中全部数据信息的维护和系统数据的备份与还原。将上述模块设计图示化后我们便可以得到如图1所示的系统功能模块图:图书借阅管理系统图书借阅管理系统数据管理图书管理会员管理借书图书类别设置会员基本信息管理会员级别设置图书基本信息管理借阅管理还书续借罚款缴纳数据查询每日统计系统维护退出系统图书查询会员查询借阅超期查询借阅记录查询今日借出今日入库今日还书今日到期数据维护数据备份备份还原会员表数据维护图书表数据维护图书借阅表数据维护会员级别表数据维护图书类别表数据维护图1系统功能模块图二、数据库分析与设计1.数据库数据结构分析通过对图书借阅管理的内容和数据分析,创建该管理系统数据库,名为"图书借阅管理系统.mdb",主要包含的数据表有"会员表"、"会员级别表"、"图书表"、"图书类别表"、"图书借阅表"共五个表。这五个表之间存在着一定的关联关系,各表间的关系如图2所示:图2系统中各表间关系图2.数据库逻辑结构设计"图书借阅管理系统"的各个数据库表结构设计如表1~表5所示:表1"会员表"表结构字段名数据类型字段大小格式主键必填字段会员证编号文本12是是会员级别文本8是会员XX文本8是会员性别文本2是XX号文本18是单位名称文本50否单位地址文本50否文本15否办证日期日期/时间短日期是有效日期日期/时间短日期否照片OLE对象否备注备注否表2"会员级别表"表结构字段名数据类型字段大小格式主键必填字段会员级别文本8是是限借册数数字整型是表3"图书表"表结构字段名数据类型字段大小格式主键必填字段图书编号文本7是是图书分类号文本30是图书类别文本30是书名文本50是作者文本50是文本30是出版日期日期/时间短日期是价格数字双精度型货币是存放位置文本50是入库时间日期/时间短日期是库存总数数字整型是在库数量数字整型是借出数量数字整型是新书入库数字整型否旧书出库数字整型否借出次数数字整型是备注备注否表4"图书类别表"表结构字段名数据类型字段大小格式主键必填字段图书类别文本30是是限借天数数字整型是超期罚款/天数字双精度型货币是表5"图书借阅表"表结构字段名数据类型字段大小格式主键必填字段默认值借阅编号自动编号长整型是图书编号文本7是会员证编号文本12是借阅日期日期/时间短日期是还书日期日期/时间短日期否罚款已缴文本2是"否"备注备注否3.创建数据库和表在数据库数据结构分析和数据库逻辑结构设计完成之后,接下来便可以用Access来创建数据库。一般步骤是首先创建数据库,再创建数据表,最后建立表间关系。〔1〕创建数据库的操作步骤:首先启动MicrosoftAccess2003,通过"文件"菜单中的"新建"命令,创建一个名为"图书借阅管理系统.mdb"的数据库,如图3所示:图3"新建数据库"文件对话框〔2〕创建表:在数据库"图书借阅管理系统.mdb"中通过"使用设计器创建表"如图4所示,分别创建"会员表"、"会员级别表"、"图书表"、"图书类别表"和"图书借阅表",各表结构如表1~表5所示。其中"图书表"表的设计视图如图5所示:图4新建"表"对象用同样的方法在表设计视图中可以分别创建"会员表"、"会员级别表"、"图书类别表"和"图书借阅表"。〔3〕建立表间关系:单击"工具"菜单的"关系"按钮,从打开的关系窗口中建立表间的关系,得到如图2所示的关系图。至此,已完成了数据库结构的分析设计和表结构的创建。在各个表中输入相关记录,如图6~图10所示:图5"图书表"结构图6会员表信息图7会员级别表信息图8图书类别表信息图9图书表信息图10图书借阅表信息三、查询的设计与实现在本图书借阅管理系统中,要用到大量的查询功能。Access2003提供了5种查询:选择查询、参数查询、交叉表查询、操作查询和SOL查询。其中操作查询又包括生成表查询、更新查询、追加查询和删除查询4种查询。生成表查询:这种查询可以根据一个或多个表中的全部或部分数据新建表。生成表查询有助于创建表以导出到其他MicrosoftAccess数据库或包含所有旧记录的历史表。更新查询:这种查询可以对一个或多个表中的一个或一组记录作全局更改。使用更新查询可以更改已有表中的数据。追加查询:追加查询将一个或多个表中的一组记录添加到一个或多个表的末尾。删除查询:这种查询可以从一个或多个表中删除一组记录。〔使用删除查询,通常会删除整个记录,而不只是记录中的部分字段。〕该图书借阅管理系统中主要用到了选择查询、操作查询的更新查询和追加查询,下边我们以实例主要说明一下这几种查询在本系统中的实现方法与过程。选择查询的设计与实现分析:在实际图书馆图书借阅过程中,会员〔借阅者〕或者图书馆管理员经常需要对图书借阅情况进行查询,比如查看某本书是否已归还、某人是否未按期归还图书、某本书是否已到归还期或是某本书是否忘记归还了等等。为了解决上述这些问题,我们就需要设置一些相应的查询〔一般都是以"选择查询"为居多〕。这些查询能有效地帮我们解决这些问题。步骤:〔以"图书借阅超期查询"为例〕第一步:选择"在设计视图中创建查询"。〔见图11〕图11第二步:分别添加"会员表"、"图书表"、"图书借阅表"和"图书类别表"。〔见图12〕见图12第三步:选择"图书表"中的"图书编号"、"书名"、"作者"、"图书类别";"会员表"中的"会员证编号"、"会员XX"、"会员级别";"图书借阅表"中的"借阅日期"、"还书日期"字段,然后再设立2个新字段——"超期天数"和"应还日期"。这两个新字段是原表中没有的,它们是以原表的部分字段为数据基础,通过数学表达式计算得出的新数据所组成的。〔表达式的写入可以通过单击工具栏上的"生成器"按钮,打开"表达式生成器"对话框来完成——如图13〕最后在"还书日期"字段的"条件"约束栏中写入约束条件"ISNULL"并在"超期天数"字段的"条件"约束栏中写入约束条件">0"〔此处正值为有效值,负值是无效值,因为负值说明还未超期,在该查询中无实用意义,故舍去〕。〔见图14〕下边给出这两个新字段的数学表达式:〔1〕超期天数:Date<>-[借阅日期]-[限借天数];〔2〕应还日期:[借阅日期]+[限借天数]。图13图14第四步:保存查询。〔见图15〕图15第五步:运行该查询。〔见图16〕图16其他选择查询的设计可参照"图书借阅超期查询"的设计来进行,如"借阅历史记录查询"、"今日借出查询"、"今日到期查询"、"今日还书查询"、"今日入库查询"、"借书查询"、"还书查询"、"续借查询"、"罚款查询"等。下边给出上述这几个选择查询的主要设计视图供大家参考:⑴."借阅历史记录查询"主设计视图:〔见图17〕图17⑵."今日借出查询"主设计视图:字段"借阅日期"须以"Date〔〕"<当前日期>作为约束条件。〔见图18〕图18⑶."今日到期查询"主设计视图:须通过"表达式生成器"建立新字段"应还日期"且以"Date〔〕"为约束条件,表达式为:应还日期:[借阅日期]+[限借天数]。〔见图19〕图19⑷."今日还书查询"主设计视图:字段"还书日期"须以"Date〔〕"作为约束条件。〔见图20〕图20⑸."今日入库查询"主设计视图:字段"入库时间"须以"Date〔〕"作为约束条件。〔见图21〕图21⑹."借书查询"主设计视图:由于"借书查询"、"还书查询"、"续借查询"、"罚款查询"这4个选择查询是专门为"借书窗体"、"还书窗体"、"续借窗体"、"罚款窗体"的功能实现而量身打造的专用查询,故其设计上有别与上述几个一般选择查询。区别主要体现在在这些查询中要设计与相应窗体中控件的功能,如大家现在在图22——"借书查询1"和图23——"借书查询2"〔此处将借书查询分为1和2两部分也是应借书窗体的功能要求而针对设计的〕中看到的"图书编号"字段和"会员证编号"字段中的条件约束即为功能的一部分。例如"借书查询1"中的"图书编号"字段的条件"[Forms]![借书窗体]![Text13]"意为与"借书窗体"中的文本框"Text13"相,该条件其实起到了一个"指针"的作用〔后边几个查询中的相似条件约束的功能与此相同,不再多作解释〕。"借书查询1"中的字段"在库数量"的约束条件为">0",表示某本书只有在有库存的情况下才允许借出。〔见图22~图23〕图22图23⑺."还书查询"主设计视图:"还书日期"字段的约束条件要设置为"IsNull",表示未还的书才会被列出。〔见图24〕图24⑻."续借查询"主设计视图:〔见图25〕图25⑼."罚款查询"主设计视图:须设立2个新字段——"超期天数"和"罚款数额"且"超期天数"字段的约束条件为">0",另外"罚款缴纳"字段的约束条件为"否",表示已欠费且未缴纳过罚款的会员才会被列出,未欠费或已缴纳过的会员不会再被列出。下边给出这两个新字段的数学表达式:〔1〕超期天数:[还书日期]-[借阅日期]-[限借天数];〔2〕[Forms]![续借窗体]![Text15]。〔见图26〕图26操作查询的设计与实现分析:在"图书借阅管理系统"中,图书的借阅功能是该系统的核心功能,如何实现该功能便是设计该系统的核心问题。我们知道,图书在借出、归还、续借等过程发生后,数据表中的数据就应发生相应的改变〔即更新〕,那么在系统中如何实现数据的自动更新或添加呢?答案是利用"操作查询"。步骤:〔以"借书更新"和"借书追加"为例〕第一步:在设计视图中创建查询,并添加"会员表"、"图书表"和"图书借阅表"。第二步:将"图书表"中的"图书编号"、"借出次数"、"借出数量"、"在库数量"字段;"会员表"中的"会员证编号"字段;"图书借阅表"中的"还书日期"字段添加进来。并将查询类型设置为"更新查询"〔设置方法:在选中查询窗口的情况下在"查询设计菜单栏"中单击"查询类型"进行更改,或者在查询窗口中的表添加栏中的空白处单击鼠标右键,在弹出的菜单中选择查询类型〕。〔见图27~图28〕图27图28第三步:对各个字段的更新条件进行设置。〔如图29〕图中"借出次数"、"借出数量"、"在库数量"三个字段的"更新到"一栏中的条件表示当借书操作使得某本图书被借出时,相应数据表中的原数据应该根据这一条件更新为新数据。约束条件"<[图书表]![库存总数]"表示若借出数量大于等于库存总数则数据无法更新,因为图书已无库存,无法借出;约束条件">0"表示只有当该书有库存的情况下才能借出;而字段"图书编号"和"会员证编号"的约束条件"[Forms]![借书窗体]![Text13]"和"[Forms]![借书窗体]![Text14]"与前边在选择查询中提到的条件一样,是查询与相应窗体中控件的功能条件。图29第四步:保存该"更新查询"。〔如图30〕图30第五步:再在设计视图中创建查询,并添加"会员表"、"图书表"和"图书借阅表"。第六步:将查询类型更改为"追加查询"并将所需的字段添加进来。第七步:对所需追加记录的字段进行追加条件限制。〔如图31〕追加查询与更新查询不太一样,它的工作原理是将"字段"中的表达式数值"追加"到相应的数据表字段中。如:对表达式3的操作即是将"Date〔〕"〔当前日期〕这一新数据追加到图书借阅表的借阅日期这一字段的数据中。至于表达式1和表达式2则是功能条件。图31第八步:保存该"追加查询"。〔如图32〕图32其他需用到操作查询的查询设计可参照"借书更新"和"借书追加"的设计来进行,如"还书更新"、"罚款更新"、"续借更新"、"续借追加"等。下边给出上述这几个操作查询的主要设计视图供大家参考:⑴."还书更新"主设计视图:〔见图33〕图33⑵."罚款更新"主设计视图:〔见图34〕图34⑶."续借更新"主设计视图:〔见图35~图36〕此处将续借功能的实现变通为以先还再借的方式来实现,故将"续借更新"分为两块:①先还——"续接更新1";②再借——"续借更新2"。图35图36⑷."续借追加"主设计视图:〔见图37〕图37四、窗体的设计与实现窗体是Access2003数据库系统的一个重要对象。前面介绍的浏览记录、显示查询结果等都是在"数据表"视图中所进行的操作,只能用于对表的一般维护。如果要改变表记录的显示界面,则需要通过界面窗口来添加、修改、删除记录或改变应用程序控制流程,这就需要数据库的一个重要组件——窗体。窗体是用户与数据之间的主要窗口,使用窗体可以对数据库进行查询、修改、添加和打印等操作,而且可以灵活的设计窗体的布局。窗体按其功能可以分为数据窗体、流程控制面板窗体和交互窗体。数据窗体:主要用来显示、浏览、添加、修改、删除表或查询中的记录。〔如图38〕图38流程控制面板窗体:主要用来控制应用程序的运行流程。〔如图39〕图39交互窗体:是在不同的状态下,给出系统提示信息或要求用户输入的窗口。〔如图40〕图40在Access2003数据库中,窗体有设计视图、窗体视图、数据表视图、数据透视表视图和数据透视图视图5种视图,它们之间可以通过工具栏"视图"按钮进行切换。〔见下图〕我们将主要介绍使用设计视图创建窗体的方法。使用窗体的设计视图来创建、修改和美化窗体,窗体的设计视图一般由窗体页眉/页脚、页面页眉/页脚和主体5部分组成。一般情况下,窗体的页眉/页脚很少用到,而主体是窗体的核心,通过在主体中添加控件可以实现对数据的管理功能。1.使用窗体向导创建窗体使用"窗体向导"可以创建使用"自动创建窗体"〔"自动创建窗体"所创建的窗体较粗糙,一般在用户对窗体效果要求不高时使用〕所创建的5种类型的窗体,不同之处在于窗体中的数据可以来源于一个或多个表与查询。在使用"窗体向导"创建窗体时,可以重新设置字段的排列顺序。下面我们以创建"会员基本信息管理窗体"为例说明一下利用"窗体向导"来创建窗体的过程。第一步:双击"使用向导创建窗体",打开窗体向导设计界面。〔见图41〕图41第二步:在"表/查询"栏中选择"表:会员表"项,并将其中要用到的字段全部添加到"选定的字段"中。〔见图42〕图42第三步:选择窗体布局。Access中有"纵栏表"、"表格"、"数据表"、"两端对齐"、"数据透视表"和"数据透视图"6种可供选择的布局类型,在这里我们以"两端对齐"为例。〔见图43〕图43第四步:选择窗体样式。Access中有"国际"、"宣纸"、"工业"、"标准"、"水墨画"和"砂岩"、"混合"、"石头"、"蓝图"和"远征"10种默认的可供选择的布局类型,在这里我们以"标准"为例。〔图44〕图44第五步:确定窗体的标题。这一步除了指定窗体标题外,我们还可以选择在向导设置完成后我们是要"打开窗体查看或输入信息"还是"修改窗体设计"。由于一般情况下通过向导创建的窗体不可能尽善尽美,有很多地方需要做适当的添加和修改,所以我们通常都选择"修改窗体设计"项并完成创建。〔见图45〕图45第六步:在"会员基本信息管理窗体"的设计视图中对窗体的大小、各个字段的位置和顺序进行调整,并添加"标签"——"会员基本信息"和8个命令按钮——"转至上一条记录"、"转至最后一条记录"、"添加记录"、"保存记录"等。〔见图46〕图46说到控件,Access的窗体设计很大程度表现在窗体控件的使用上。控件是窗体中用于显示数据、执行操作命令或修饰窗体的一种对象。在窗体设计视图窗口中,单击工具栏上的"工具箱"按钮,屏幕出现控件"工具箱"工具栏。工具箱中包括各种控件按钮,如标签、文本框、选项组、复选框、列表框、组合框、绑定对象框、未绑定对象框、选项按钮、命令按钮、切换按钮、分页符、选项卡控件、子窗体/子报表、矩形、直线、图像等。下面以"转至下一条记录"命令按钮的添加为例来简单说明一下窗体控件的使用。〔1〕单击"工具箱"中的"命令按钮",然后将鼠标移至窗体设计视图界面中要添加该命令按钮的地方单击鼠标左键进行命令按钮的添加。〔如图47〕图47〔2〕在弹出的"命令按钮向导"窗口中选择该按钮所要执行的命令或其该具备的功能。〔如图48〕图48〔3〕选择按钮的显示类型。Access支持两种显示方式:"文本"型和"图片"型。我们以"图片"型为例进行说明。〔如图49〕图49〔4〕为命令按钮命名。〔如图50〕图50第七步:窗体最终效果预览与功能验证。〔如图51〕图51可用同样方法创建"会员级别设置窗体"、"图书基本信息管理窗体"、"图书类别设置窗体"等窗体。下边列出上述几个窗体的主要设计视图:⑴."会员级别设置窗体"设计视图:〔如图52〕图52⑵."图书基本信息管理窗体"设计视图:〔如图53〕图53⑶."图书类别设置窗体"设计视图:〔如图54〕图542.使用窗体设计视图创建窗体利用设计视图创建窗体随意性很大,你可以完全按照自己的想法或用户具体的需求有针对性的进行窗体设计。下面我们以"还书窗体"为例来对运用设计视图创建窗体的过程步骤进行说明。第一步:双击"在设计视图中创建窗体",打开窗体视图设计界面。〔见图55〕图55第二步:调整窗体"主体"大小到所需的值。〔见图56〕图56第三步:添加所需的窗体控件。〔见图57~图58〕①标签——"还书"标签〔Label0〕;②文本框——"会员证编号"文本框〔Text11〕和"图书编号"文本框〔Text12〕;③命令按钮——"确定"按钮〔Command11〕和"还书"按钮〔Command12〕;④子窗体——"还书子窗体"窗体〔Child15〕。图57图58其中"还书子窗体"窗体只是对"还书查询"查询〔已在前边查询的设计与实现部分介绍过〕的窗体化,即"还书子窗体"的记录源是"还书查询"。"还书子窗体"的主要设计视图如图59。图59第四步:设置各控件的数据连接或事件过程。〔见图60~图65〕①"子窗体"控件的数据源对象为"还书子窗体"。〔见图60〕图60②"还书子窗体"的数据记录源为"还书查询"。〔见图61〕图61③"确定"命令按钮的"单击"事件过程为一组代码〔见图62~图63〕,其功能为调用"还书"查询中与窗体控件"会员证编号"文本框和"图书编号"文本框中所输入相符的所具有的相关数据信息。"确定"命令按钮〔Command11〕代码:PrivateSubCommand11_Click<>Me.还书子窗体.RequeryEndSub图62图63④"还书"命令按钮的"单击"事件过程是调用宏"还书更新宏"。"还书更新宏"通过执行"还书更新"查询来实现图书还书功能。〔见图64~图65〕图64图65第五步:保存"还书窗体"。〔见图66〕图66第六步:窗体最终效果预览与功能验证。〔见图67〕图67其他类似窗体有"借书窗体"、"续借窗体"、"罚款窗体"、"图书查询窗体"、"会员查询窗体"、"借阅超期查询窗体"、"借阅记录查询窗体"等,其窗体设计可以参照上述"还书窗体"的例子进行创建。下边给出了这几个窗体的主要设计视图供大家参考:⑴."借书窗体"主要设计视图:〔如图68~图71〕图68"借书窗体"设计视图图69"借书子窗体1"设计视图图70"借书子窗体2"设计视图其中两个"确定"命令按钮的代码为:PrivateSubCommand13_Click<>Me.借书子窗体1.RequeryEndSubPrivateSubCommand14_Click<>Me.借书子窗体2.RequeryEndSub"借出"命令按钮的"单击"事件为调用宏"借书更新宏",见图71。〔关于"宏"的创建将会在后边专门介绍〕图71⑵."续借窗体"主要设计视图:〔如图72~图74〕图72"续借窗体"设计视图图73"续借子窗体"设计视图其中"确定"命令按钮的代码为:PrivateSubCommand17_Click<>Me.续借子窗体.RequeryEndSub"续借"命令按钮的"单击"事件为调用宏"续借更新宏",见图74。图74⑶."罚款窗体"主要设计视图:〔如图75~图77〕图75"罚款窗体"设计视图图76"罚款子窗体"设计视图其中"确定"命令按钮的代码为:PrivateSubCommand19_Click<>Me.罚款子窗体.RequeryEndSub"缴纳"命令按钮的"单击"事件为调用宏"罚款缴纳宏",见图77。图77⑷."图书查询窗体"主要设计视图:〔如图78~图79〕图78"图书查询窗体"设计视图图79"图书查询窗体子窗体"设计视图其中"确定"命令按钮的代码为:PrivateSubCommand5_Click<>Me.图书查询窗体子窗体.Form.RecordSource="select*from图书表where"+Combo1+"='"+Text3+"'"EndSub⑸."会员查询窗体"主要设计视图:〔如图80~图81〕图80"会员查询窗体"设计视图图81"会员查询窗体子窗体"设计视图其中"确定"命令按钮的代码为:PrivateSubCommand6_Click<>Me.会员查询窗体子窗体.Form.RecordSource="select*from会员表where"+Combo2+"='"+Text4+"'"EndSub⑹."借阅超期查询窗体"主要设计视图:〔如图82~图83〕图82"借阅超期查询窗体"设计视图图83"借阅超期查询窗体子窗体"设计视图其中"确定"命令按钮的代码为:PrivateSubCommand7_Click<>Me.超期查询窗体子窗体.Form.RecordSource="select*from图书借阅超期查询where"+Combo3+"='"+Text5+"'"EndSub⑺."借阅记录查询窗体"主要设计视图:〔如图84~图85〕图84"借阅记录查询窗体"设计视图图85"借阅记录查询窗体子窗体"设计视图其中"确定"命令按钮的代码为:PrivateSubCommand10_Click<>Me.借阅历史记录.Form.RecordSource="select*from借阅历史记录查询where"+Combo10+"='"+Text10+"'"EndSub五、报表的制作在Access数据库中,系统为创建报表提供了方便的向导功能,你可以利用"报表向导"和"自动创建报表"来快速创建报表,当然你也可以"在设计视图中创建报表"。如果你对报表没有特殊的要求,使用自动创建报表可以快速创建一个报表,但报表的数据源必须是来自一个表或者查询,且自动创建出来的报表比较粗糙,甚至会出现部分字段因位置过于靠近而无法全部显现的情况;如果直接在设计视图中创建报表,虽然能作出很好的效果,但所花费的时间和精力会相对较多,所以这两种方法一般用的较少,我们通常都是利用报表向导来创建报表。下面来说明一下利用向导创建报表具体步骤:〔以"今日到期统计"报表为例〕第一步:"新建"报表,选择"报表向导"并确定。〔见图86〕图86第二步:在"表/查询"中选择"查询:今日到期查询"。〔见图87〕图87第三步:在"今日到期查询"的"可用字段"中选取需在报表中显示出来的字段,将其添加到"选定的字段"栏中并单击"下一步"。〔见图88~图89〕图88图89第四步:添加分组级别,并在"分组选项"里设置"分组间隔"。"分组间隔"中有多种分类选项,可根据具体情况进行选择,在这里我们选择"普通"即可。〔见图90〕图90第五步:对字段进行记录排序。Access最多支持对四个字段的排序,既可以升序排序也可以降序排序。〔见图91〕图91第六步:确定报表的布局方式。报表的布局方式分为2大块——"布局"和"方向"。在本例里由于显示字段较多,所以我们选择"布局"为"分级显示2"、"方向"为"横向",并选中"调整字段宽度使所有字段都能显示在一页中"选项。〔见图92〕图92第七步:确定报表所采用的样式。Access数据库自带的报表版本样式有6中:大胆、正式、淡灰、紧凑、组织和随意。在这里我们选用"正式"类型的即可。〔见图93〕图93第八步:确定报表的标题。这一步除了指定报表标题外,我们还可以选择在向导设置完成后我们是要"预览报表"还是"修改报表设计"。由于一般情况下通过向导创建的报表不可能尽善尽美,有很多地方需要做适当的调整,所以我们通常都选择"修改报表设计"项并完成创建。〔见图94〕图94第九步:在打开的设计视图窗口中对报表做相应的微调并保存。〔见图95〕图95第十步:最终报表预览。〔见图96〕图96其他报表的设计可以参照"今日到期统计"报表进行,如"今日还书统计"、"今日借出统计"、"今日入库统计"等。下边给出了上述这几个报表设计的主要设计视图:⑴."今日还书统计"主设计视图:〔见图97〕图97⑵."今日借出统计"主设计视图:〔见图98〕图98⑶."今日入库统计"主设计视图:〔见图99〕图99六、宏与系统菜单的设计宏是Access中执行特定任务的操作或操作集合,其中每个操作能够实现特定的功能。宏可以包含一个或多个宏命令,也可以是由几个宏组成的宏组。在Access中宏的使用是很方便的,你不需要记住各种语法,也不需要编程,只需要使用几个简单的宏操作就可以将已经创建的数据库对象联系在一起,实现特定的功能。Access定义了许多宏操作,这些宏操作可以完成以下功能:打开、关闭数据表、报表、打印报表、执行查询。筛选、查找记录。模拟键盘动作,为对话框或等待输入的任务提供字符串输入。显示警告信息框,响铃警告。移动窗口,改变窗口大小。实现数据的导入、导出。定制菜单。设置控件的属性等。创建宏的操作是在设计视图中完成的。创建宏的操作包括确定宏名、设置宏条件、选择宏操作、设置宏参数等。1.简单宏设计首先,我们以本系统中的"密码验证窗体"的"密码验证宏"的设计创建来对宏功能的应用做一个简单的介绍:第一步:设计创建一个"密码验证"窗体。〔见图100〕图100消息:"密码错误"第二步:由于"密码验证"窗体中的"确定"按钮控件需要通过调用宏来实现其功能,所以我们必须设计创建一个相应的"密码验证"宏。〔见图101〕消息:"密码错误"密码正确,打开"主控面板"窗体密码正确,打开"主控面板"窗体图101第三步:保存该"密码验证"宏并将其与"确定"命令按钮做连接。〔见图102〕图102第四步:运行该宏。打开"密码验证"窗体,若输入一个错误密码〔如:123〕则会弹出"错误密码消息提示框"并无法进入系统;若输入的密码正确〔123456〕,则进入系统。〔见图103〕图103本"图书借阅管理系统"中会用到较多的这种控件控制宏〔比如在前边窗体的创建设计中介绍到的命令按钮调用宏〕,都可以仿照该"密码验证"宏的设计来制作完成。另外,本系统的各系统控制面板窗体之间的切换功能也是运用许多简单宏来实现的。下边以一个具体例子〔"借阅管理"控制面板的设计制作〕来说明:第一步:创建一个"借阅管理"窗体,添加一个内含五个切换按钮的选项组。〔如图104〕内含5个切换按钮的选项组。内含5个切换按钮的选项组。图104第二步:在各切换按钮的"事件"属性的"鼠标按下"属性中添加相应的功能宏〔以"借书"和"返回"切换按钮为例〕。〔见图105~图108〕图105图106图107图108第三步:保存以上设置并进行调试运行。其他各系统控制面板窗体调用宏可完全依照上述例子来创建,下边给出其中几个实例视图〔见图109~图111〕:图109"每日统计"控制面板窗体调用宏图110"系统维护_数据维护"控制面板窗体调用宏图111"系统维护"控制面板窗体调用宏2.系统菜单宏设计一个完整的数据库管理系统必须要有一个菜单栏,把数据库的各个对象连接起来。这样,用户既可以通过窗体对应用程序的各个模块进行操作,也可以通过菜单进行操作。创建应用程序的系统菜单可以通过创建宏的方法来创建。表6列出了"图书借阅管理系统"的菜单栏与菜单项。表6菜单栏名称〔宏组〕菜单项〔宏名〕宏操作对象名称视图数据管理图书管理图书基本信息管理OpenForm图书基本信息管理窗体窗体图书类别设置OpenForm图书类别设置窗体窗体会员管理会员基本信息管理OpenForm会员基本信息管理窗体窗体会员级别设置OpenForm会员级别设置窗体窗体返回Close数据管理窗体借阅管理借书OpenForm借书窗体窗体还书OpenForm还书窗体窗体续借OpenForm续借窗体窗体罚款缴纳OpenForm罚款窗体窗体返回Close借阅管理窗体数据查询图书查询OpenForm图书查询窗体窗体会员查询OpenForm会员查询窗体窗体借阅超期查询OpenForm超期查询窗体窗体借阅记录查询OpenForm借阅历史记录窗体窗体返回Close数据查询窗体每日统计今日借出OpenReport今日借出统计报表〔打印预览〕今日到期OpenReport今日到期统计报表〔打印预览〕今日还书OpenReport今日还书统计报表〔打印预览〕今日入库OpenReport今日入库统计报表〔打印预览〕返回Close每日统计窗体系统维护数据维护图书表数据维护OpenTable图书表数据表图书类别表数据维护OpenTable图书类别表数据表会员表数据维护OpenTable会员表数据表会员级别表数据维护OpenTable会员级别表数据表图书借阅表数据维护OpenTable图书借阅表数据表数据备份CopyObject〔相应的表、查询、窗体等〕〔可以为表、查询、窗体等〕备份还原TransferDatabase〔相应的表、查询、窗体等〕〔可以为表、查询、窗体等〕返回Close系统维护窗体退出系统退出系统Quit各宏组创建完成后,还要创建一个名为"系统菜单"的宏,将各个下拉菜单组合到菜单栏中。宏"系统菜单"的设计如图〔112〕所示:图112"系统菜单"宏创建完成后需要生成"系统菜单栏"。生成过程如下:首先,选中"系统菜单"宏;然后,点击菜单栏中的"工具"选项,再点击"宏"——"用宏创建菜单"即可。最后,附上Access2003常用宏命令与其功能表,以方便大家更好的学习、掌握与运用Access宏。〔见表7〕表7宏命令功能AddMenu将一个菜单项添加到窗体或报表的自定义菜单栏中,每一个菜单项都需要一个独立的AddMenu操作ApplyFilter筛选表、窗体或报表中的记录Beep产生蜂鸣声CancelEvent删除当前事件Close关闭指定窗口CopyObject将数据库对象复制到目标数据库中DeleteObject删除指定的数据库对象Echo设定运行宏时是否显示宏运行的结果FindNext为FindRecord中的准则寻找下一条记录,通常在宏中选择宏操作
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论