




已阅读5页,还剩16页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
首都师范大学信息工程学院成人2013年第一学期(数据库原理)期末试卷年级专业: 软件工程(软件质量与测试) 试卷类型:课程设计 姓名:刘伟 学号:3131008127 成绩:题目:图书借阅管理系统图书借阅管理系统摘要随着网络技术的高速发展,计算机应用的普及,利用计算机对图书的日常管理势在必行。虽然目前很多大型的图书馆已经有一整套比较完善的管理系统,但是在一些中小型的图书馆中,大部分工作仍需要手工完成,工作起来效率比较低,管理员不能及时了解图书馆内各类图书的借阅情况,读者需要的图书难以在短时间内找到,不便于动态及时地调整图书结构。本文论述了基于ACCESS 2003的图书馆管理系统的实现思路和开发过程,包括需求分析、系统设计、系统实现,系统测试等方面。目录1.开发背景12.需求分析13.系统设计13.1系统目标13.2业务流程图23.3系统功能结构图24.数据库设计34.1数据库概要设计34.2数据库逻辑结构设计44.3表关系55.编码及实现55.1登录界面设计55.2系统主页设计65.2.1系统主页界面65.2.2系统主页实现过程75.3图书管理模块设计75.3.1图书管理模块界面75.3.2图书管理的实现过程85.4读者管理模块设计115.4.1读者管理模块界面115.4.2读者管理的实现过程125.5借阅管理模块设计125.5.1借阅管理模块界面125.5.2借阅管理的实现过程136.系统测试156.1登录功能测试166.2图书管理测试166.3读者管理测试166.4借阅管理测试177.开发环境及注意事项171. 开发背景随着现代图书流通市场竞争的愈演愈烈,如何以一种新的管理方式提高图书流通信息的反馈速度,降低库存占用,加快资金周转,提高工作效率,已经成为提高竞争力的关键。信息技术的发展给图书的管理带来了新的力量,通过图书馆管理系统对图书的全程管理,不仅摆脱了人工管理所固有的一系列弊端和问题,更重要的是提高了工作效率。2. 需求分析长期以来,人们使用传统的人工方式管理图书馆的日常业务,其操作流程比较繁琐。在借书时,读者首先将要借的书好借阅证交给工作人员,然后工作人员将每本书的信息卡片好读者的借阅证放在一个小格栏里,最后在借阅证和每本书贴的借阅条上填写借阅信息。在还书时,读者首先将要还的书交给工作人员,然后工作人员根据图书信息找到相应的书卡好借阅证,并填写相应的还书信息。从上述描述中可以发现,传统的手工流程存在着种种不足。首先处理借书、还书业务流程的效率很低;其次处理能力比较低,一断时间内,所能服务的读者人数只能是很有限的。为此,图书借阅管理系统需要为解决上述问题,提供快速的图书信息检索功能及快捷的图书借阅、归还流程。3. 系统设计3.1 系统目标根据图书馆日常图书管理工作的需求,图书借阅的管理流程,该系统实施后应达到以下目标。1. 界面设计友好、美观,易维护,易操作。2. 图书信息,读者信息,借阅信息的分类管理。3. 借阅,归还图书功能。4. 实时查询图书,读者及借阅信息。5. 图书,读者,借阅相关信息统计功能。3.2 业务流程图图书借阅管理系统的系统流程如图3-1所示。读者图书借阅图书归还管理获取读者信息获取图书信息借阅成功归还成功借阅信息处理图书出库图书入库更新读者信息,图书信息,借阅信息图3-1 系统流程图3.3 系统功能结构图根据图书借阅管理系统的特点,可以将其分为系统设置、读者管理、图书管理、借阅管理4个部分,其中各个部分及其包括的具体功能模块如图3-2所示。图书借阅管理系统系统设置读者管理图书管理借阅管理登录注销统计信息新增读者删除读者修改图书删除图书图书借出图书归还新增图书修改读者查找读者查找图书借阅查询图3-2 系统功能结构图4. 数据库设计本系统采用ACCESS 2003数据库,名称为图书借阅管理系统.mdb,其中包含3张表。下面分别说明数据库的概要设计及逻辑设计。4.1 数据库概要设计通过对本系统进行的需求分析、系统流程设计以及系统功能结构的确定,规划出系统中使用的数据库实体对象,具体说明如下。图书类:书名,作者,出版社,价格,图书编号,库存。 读者类:姓名,性别,读者编号,电话,身份证号,已借数量。实体E-R图如图4-1所示:图4-1 实体 E-R图4.2 数据库逻辑结构设计根据实体E-R图,设计出数据表的结构。以下是主要数据表的数据结构和用途。1. 图书借阅表用于保存所有已借阅图书的信息,该表的结构如表4-2所示。表4-2 图书借阅表字段名数据类型长度主键描述借阅编号自动编号10是借阅编号图书编号文本100否图书编号图书名称文本100否图书名称借出时间日期/时间短日期否借出日期归还时间日期/时间短日期否归还日期读者编号文本50否读者编号读者姓名文本20否读者姓名罚金货币10否罚金2. 图书信息表用于保存所有图书信息,该表的结构如表4-3所示。表4-3 图书信息表字段名数据类型长度主键描述图书编号自动编号100是图书编号书名文本100否图书名称出版社文本100否出版社名称作者文本80否作者姓名价格货币10否图书价格库存数字4否库存量3. 读者信息表用于保存所有读者信息,该表的结构如表4-4所示。表4-4 读者信息表字段名数据类型长度主键描述读者编号自动编号50是读者编号读者姓名文本50否读者姓名性别文本50否读者性别身份证号文本50否身份证号电话文本50否联系电话已借数量数字4否已借数量4.3 表关系 图4-5 “图书借阅管理系统” 表间关系图5. 编码及实现5.1 登录界面设计在登录窗口中添加2个文本框控件,分别用于输入用户名和密码,1个commandButton控件。用于触发登录事件,界面如图5-1所示。图5-1 登录界面以下是“登录”按钮的click事件的主要代码 :Private Sub login_Click()Dim a, b As StringIf IsNull(用户名) ThenMsgBox (请输入用户名!)ElseIf IsNull(密码) ThenMsgBox (请输入密码!)Elsea = Me.用户名b = Me.密码If a liuwei Or b 123 Then MsgBox (用户名或密码有误!) Me.用户名 = Me.密码 = Me.用户名.SetFocusElseMsgBox (欢迎登录图书借阅管理系统!) DoCmd.Close DoCmd.OpenForm 主页End IfEnd IfEnd Sub5.2 系统主页设计5.2.1 系统主页界面管理员通过“登录”模块验证后,可以登录到图书借阅管理系统的主页。系统主页主要包括读者管理、图书管理、借阅管理、统计信息4部分。系统主页界面如图5-2所示。 图5-2 系统主页界面5.2.2 系统主页实现过程(1) 添加一个标签控件用于显示系统名称。(2) 添加4个commandButton控件用于各功能模块入口。(3) 使用openform命令进行各窗体的链接。(4) 添加1个commandButton控件用于退出系统。(5) 使用close命令退出系统。5.3 图书管理模块设计5.3.1 图书管理模块界面图书管理模块主要包括查看图书详细信息、添加图书信息、修改图书信息、删除图书信息、导出图书详细信息5个功能。在主页点击“图书管理”进入到图书管理页面。页面运行效果如图5-3所示。图5-3 图书管理界面5.3.2 图书管理的实现过程1. 设计步骤(1) 本模块使用的数据表是“图书信息”。(2) 新建主窗体,并在主窗体中引用子窗体,用于显示所有图书信息。(3) 上方添加文本框和commandButton控件,用于图书信息查找,导出。(4) 下方添加文本框和commandButton控件,用于图书新增,修改,删除。2. 实现代码commandButton控件均用单击事件触发,实现代码如下:“查询”图书功能代码:Private Sub 查询_Click()Me.存书查询子窗体.RequeryEnd Sub“删除”图书功能代码:Private Sub 删除_Click()Dim code, SQL As StringIf Me.图书编号 = 自动编号 ThenMsgBox 请在上方列表中选择要删除的图书!Elsecode = Me.图书编号SQL = Delete * FROM 图书信息 Where 图书编号= & codeCurrentProject.Connection.Execute SQLMsgBox 删除成功!Me.存书查询子窗体.RequeryEnd IfEnd Sub“新增”图书功能代码:Private Sub 新增_Click()Dim zz,cbs,kc,jg,sm,SQL As StringIf Me.图书编号 自动编号 Then Me.书名1 = Null Me.作者1 = Null Me.出版社1 = Null Me.价格1 = Null Me.库存1 = Null Me.图书编号 = 自动编号ElseIf IsNull(书名1) ThenMsgBox 请输入书名!ElseIf IsNull(作者1) ThenMsgBox 请输入作者!ElseIf IsNull(出版社1) ThenMsgBox 请输入出版社!ElseIf IsNull(价格1) ThenMsgBox 请输入价格!ElseIf IsNull(库存1) ThenMsgBox 请输入库存!Elsezz = Me.作者1cbs = Me.出版社1kc = Me.库存1jg = Me.价格1sm = Me.书名1SQL = insert into 图书信息(作者,出版社,库存,价格,书名) values( & zz & , & cbs & , & kc & , & jg & , & sm & )CurrentProject.Connection.Execute SQLMsgBox 新增成功!Me.存书查询子窗体.RequeryEnd IfEnd Sub“修改”图书功能代码:Private Sub 修改_Click()Dim code,zz,cbs,kc,jg,sm,SQL As StringIf Me.图书编号 = 自动编号 ThenMsgBox 请在上方列表中选择要修改的图书!Elsecode = Me.图书编号zz = Me.作者1cbs = Me.出版社1kc = Me.库存1jg = Me.价格1sm = Me.书名1SQL = update 图书信息 set 作者= & zz & ,出版社= & cbs & ,库存= & kc & ,价格= & jg & ,书名= & sm & Where 图书编号= & codeCurrentProject.Connection.Execute SQLMsgBox 修改成功!Me.存书查询子窗体.RequeryEnd IfEnd Sub5.4 读者管理模块设计5.4.1 读者管理模块界面读者管理模块主要包括读者新增,读者修改,读者删除,读者查找,读者导出5个功能。在主页点击“读者管理”进入到读者管理页面。页面运行效果如图5-4所示。图5-4 读者管理界面5.4.2 读者管理的实现过程1. 设计步骤(1) 本模块使用的数据表是“读者信息”。(2) 新建主窗体,并在主窗体中引用子窗体,用于显示所有读者信息。(3) 上方添加文本框和commandButton控件,用于读者信息查找,导出。(4) 下方添加文本框和commandButton控件,用于读者新增,修改,删除。2. 实现代码commandButton控件均用单击事件触发,部分实现代码如下:“查询”读者功能代码:Private Sub 查询_Click()Me.读者查询子窗体.RequeryEnd Sub“删除”读者功能代码:Private Sub 删除_Click()Dim code, SQL As StringIf Me.读者编号 = 自动编号 ThenMsgBox 请在上方列表中选择要删除的读者!Elsecode = Me.读者编号SQL = Delete * FROM 读者信息 Where 读者编号= & codeCurrentProject.Connection.Execute SQLMsgBox 删除成功!Me.读者查询子窗体.RequeryEnd If End Sub“新增”,“修改”读者功能代码同新增修改图书类似,这里不重复说明。5.5 借阅管理模块设计5.5.1 借阅管理模块界面借阅管理模块主要包括图书借出,图书归还、借阅查找,借阅导出4个功能。在主页点击“借阅管理”进入到借阅管理页面。页面运行效果如图5-5所示。图5-5 借阅管理界面5.5.2 借阅管理的实现过程1. 设计步骤(1) 本模块使用的数据表是“图书借阅”。(2) 新建主窗体,并在主窗体中引用子窗体,用于显示所有借阅信息。(3) 上方添加文本框和commandButton控件,用于借阅信息查找,导出。(4) 下方添加文本框和commandButton控件,用于图书借出,图书归还。2. 实现代码commandButton控件均用单击事件触发,实现代码如下:“查询”借阅信息功能代码:Private Sub 查询_Click()Me.借阅查询子窗体.RequeryEnd Sub“归还”图书功能代码:Private Sub 归还_Click()Dim a, b, c, d, e, f, g, h, k As StringDim i, j As IntegerIf Not IsNull(归还时间) ThenMsgBox 该图书已归还,不需要再次归还!Elsea = Me.借阅编号f = Me.读者编号1g = Me.图书编号1h = Me.借出时间c = Datei = DateDiff(d, h, Now)b = update 图书借阅 set 归还时间= & c & where 借阅编号= & ad = update 图书信息 set 库存=库存+1 where 图书编号= & ge = update 读者信息 set 已借数量=已借数量-1 where 读者编号= & fCurrentProject.Connection.Execute bCurrentProject.Connection.Execute dCurrentProject.Connection.Execute eIf i = 15 ThenMsgBox 归还成功!Me.借阅查询子窗体.RequeryElsej = (i - 15) * 5k = update 图书借阅 set 罚金= & j & where 借阅编号= & aCurrentProject.Connection.Execute kMsgBox 归还成功!图书借出时间超过了15天,应交罚款: & j & 元Me.借阅查询子窗体.RequeryEnd If End If End Sub“借出”图书功能代码:Private Sub 借出_Click()Dim a, b, c, d, e, f, g As StringDim h, i As IntegerIf IsNull(图书名称1) ThenMsgBox 请输入图书名称!ElseIf IsNull(读者姓名1) ThenMsgBox 请输入读者姓名!Elsea = Me.图书编号1b = Me.图书名称1c = Me.读者编号1d = Me.读者姓名1h = DLookup(库存, 图书信息, 图书编号= & a & )If h = 0 ThenMsgBox 该图书已没有库存,请选择其他图书!Elsee = insert into 图书借阅(读者编号,读者姓名,图书编号,图书名称) values( & c & , & d & , & a & , & b & )f = update 图书信息 set 库存=库存-1 where 图书编号= & ag = update 读者信息 set 已借数量=已借数量+1 where 读者编号= & cCurrentProject.Connection.Execute eCurrentProject.Connection.Execute fCurrentProject.Connection.Execute gMsgBox 借出成功!Me.借阅查询子窗体.RequeryEnd If End If End Sub6. 系统测试模块功能测试,就是为了检查在模块中有没有不能实现或实现有问题的功能,或是运行是否稳定以及能否反复使用。以下是对系统的主要功能进行测试的步骤及其测试结果。6.1 登录功能测试测试目的:测试登录功能是否运行正常。测试步骤:1.进入登陆界面;2.输入用户名liuwei,密码:111,点击登陆;3.输入用户名liuwei,密码:123,点击登陆。期望结果:1.当输入输入用户名liuwei,密码:111时,登陆不成功,提示“用户名或密码有误!” 2.当输入用户名输入用户名liuwei,密码:123时,登陆成功。提示“欢迎登录图书借阅管理系统!”实测结果:经测试此功能运行正常。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- DZ/T 0247-20091∶1 000 000海洋区域地质调查规范
- DZ/T 0185-1997石油天然气地球化学勘查技术规范
- DZ/T 0017-1991工程地质钻探规程
- CJ/T 51-2018城镇污水水质标准检验方法
- CJ/T 500-2016城市轨道交通车地实时视频传输系统
- CJ/T 133-2012IC卡冷水水表
- 清晰策略软件评测师试题及答案
- 系统分析师考试科目与内容导引试题及答案
- 精准备考初级社会工作者考试试题及答案
- 梦想成真阅读试题及答案
- 动火作业审批表
- Excel函数公式练习
- 项目管理人员三级安全教育记录表
- 建筑工程资料管理 第3版 习题答案 王辉 单元6
- 小儿麻醉指南课件
- 内部待岗人员登记审批表
- 学习课件铸牢中华民族共同体意识PPT
- 病害与杀菌剂基础知识
- 体育与健康PPT(中职)全套完整教学课件
- 铁道车辆制动装置检修PPT(高职)完整全套教学课件
- 法律尽职调查清单(Reits)
评论
0/150
提交评论