西安理工大学图书借阅管理数据库设计及开发.doc

上传人:仙人指路1688 文档编号:2395169 上传时间:2023-02-17 格式:DOC 页数:35 大小:3.84MB
返回 下载 相关 举报
西安理工大学图书借阅管理数据库设计及开发.doc_第1页
第1页 / 共35页
西安理工大学图书借阅管理数据库设计及开发.doc_第2页
第2页 / 共35页
西安理工大学图书借阅管理数据库设计及开发.doc_第3页
第3页 / 共35页
西安理工大学图书借阅管理数据库设计及开发.doc_第4页
第4页 / 共35页
西安理工大学图书借阅管理数据库设计及开发.doc_第5页
第5页 / 共35页
点击查看更多>>
资源描述

《西安理工大学图书借阅管理数据库设计及开发.doc》由会员分享,可在线阅读,更多相关《西安理工大学图书借阅管理数据库设计及开发.doc(35页珍藏版)》请在三一办公上搜索。

1、数据库原理及应用课程设计报告设计题目:西安理工大学图书借阅管理数据库设计及开发学 院 理学院 专 业 信息与计算科学 班 级 计算 学 号 310081 姓 名 指导教师 段刚龙 2012年12月24日 2013年1月4日目 录1选题背景及系统目标- 1 -1.1选题背景- 1 -1.2系统目标- 1 -2需求分析- 2 -2.1组织机构分析- 2 -2.2系统功能分析- 2 -2.3业务流程调查与分析- 3 -2.4数据流程调查与分析- 4 -2.5典型数据字典分析- 6 -3系统数据库设计- 13 -3.1数据库概念结构设计- 13 -3.2数据库逻辑结构设计- 15 -3.3数据库物理结

2、构设计- 16 -3.4数据库关系设计- 17 -4系统主要功能模块设计与实现- 18 -4.1图书管理员登陆界面模块设计- 18 -4.2主界面模块设计- 18 -4.3增加用户模块设计- 19 -4.4添加图书模块设计- 19 -4.5图书查询模块设计- 20 -4.6图书借阅模块设计- 21 -4.7添加读者模块设计- 22 -4.8查询读者信息模块设计- 23 -4.9还书模块设计- 24 -4.10退出系统界面设计- 25 -4.11模块代码- 25 -5系统特点与不足- 31 -5.1优点- 31 -5.2需要进一步改进的地方- 31 -6总结- 31 -6.1课程设计主要问题及解

3、决办法- 31 -6.2收获与建议- 32 -7参考文献- 32 -1 选题背景及系统目标1.1 选题背景随着现在科学技术的进步,人类社会正逐渐走向信息化,图书馆拥有丰富的文献信息资源,是社会系统的重要组成部分,在信息社会中作用越来越重要,在我国图书馆计算机等 信息技术的应用起步于20世纪70年代末期,随着改革开放的步伐得迅速发展,特别是90年代以后,我国图书馆信息网络建设取得了较大发展,图书馆信息化建设迈向了一个新台阶。1.2 系统目标(1)用户方便进行图书查询,图书浏览和图书分类浏览,进行图书借阅并了解自己的借书情况和个人情况。(2)用户在借书超期的情况下得到来自管理员的提醒。(3)管理员

4、可以方便进行图书管理,用户管理,管理员管理。图书管理包括图书信息以及图书分类的添加,修改,删除。用户管理包括用户信息的添加,删除,修改和锁定(限制用户的正常使用功能,使其无法登陆)。管理员管理包括管理员信息的添加,删除,修改等。(4)用户和管理员可以修改自己的密码,修改前需先核实自己的原始密码。(5)未注册用户(游客)也可以浏览所有的图书信息和分类信息,但是无法借阅。 (6)实现模糊查询,使用户得到更多的相关记录。并且考虑使用的方便性,一些经常使用的输入无须用户输入,比如进行图书查询时图书分类只须用户做选择就可以。(7)考虑程序执行操作时可能出现的情况,比如删除图书分类时该分类下存在图书,程序

5、自动跳转该分类图书查看。删除某个用户,如果存在借书记录则不允许删除,跳转到该用户的借书记录。等待管理员确认该用户所借图书已经全部归还之后才允许删除该用户信息。2 需求分析2.1 组织机构分析组织在这里是指一个单位或部门。我们到任何一个组织中区调查研究,首先接触到的具体情况是系统的组织结构。组织结构师指组织内部的部门划分以及它们的相互关系。现行系统中信息的流动关系是以组织结构为背景的。在一个组织中,各部门之间存在着各种关联。主要有以下几种:(1)领导关系(2)信息传递关系(3)资源传递的关系2.2 系统功能分析 功能是指完成某项工作的能力,为了实现系统目标,系统必须具有各种功能。系统功能分析如图

6、2-1所示: 图2-1 系统功能表2.3 业务流程调查与分析 业务流程调查主要任务是调查系统中各环节的业务活动,掌握业务的内容、作用及信息的输入、输出、数据存储和信息的处理方法及过程等。在图书馆的管理系统中,从读者角度考虑的业务流程图如图2-2所示: 图2-2 业务流程图2.4 数据流程调查与分析数据流程是系统中的信息处理的方法和过程的统一。由于老的系统中的数据处理时建立在手工处理或成就的信息处理手段的基础上的,我们有理由相信,新的信息技术条件将为数据处理提供较为有效地处理方法。在进行系统的详细设计时,我们先进行了系统的总体设计流程图,如图2-3所示,然后是子系统的流程图,如图2-4及2-5所

7、示: 图2-3 图书借阅总体设计流程图 图2-4 读者管理流程图 图2-5 子系统还书流程图2.5 典型数据字典分析用数据字典描述数据库的设计,便于维护和修改。为了更好地组织数据和设计出实际应用数据库,应该注意如下问题:规范化地重组数据结构;对数据进行规范化表达。 关系数据结构的建立,在进行了数据基本结构的规范化重组后,还必须建立整体数据的关系结构。这一步设计完成后数据库和数据结构设计工作基本完成,只待系统实现时将数据分析和数据字典的内容代入到所设计的数据整体关系结构中,一个规范化数据库系统结构就建立起来了。 建立关系数据结构涉及三方面内容:确定关联的关键指标项并建立关联表;确定单一的父系记录

8、结构;建立整个数据库的关系结构。图书管理系统数据流图中,数据信息和处理过程需要通过数据字典才能描述清楚。在定义的图书管理系统数据字典中,主要对数据流图中的数据项、数据流、数据存储和处理过程进行说明。(1)数据项描述 1)数据项名称:借书证号 含义说明:惟一标识一个借书证 类型:字符型 长度:50 逻辑关系:不允许为空 2)数据项名称:用户名 含义说明:读者的名称 类型:字符型 长度:20 逻辑关系:不允许为空 3)数据项名称:密码 含义说明:对用户名和操作员管理员进行加密 类型;字符型 长度:10 逻辑关系:允许为空 4)数据项名称:性别 类型:字符型 长度:10 逻辑关系:允许为空 5)数据

9、项名称:所在系别 类型;字符型 长度:10 逻辑关系:允许为空 6)数据项名称:所在班级 类型:字符型 长度:10 逻辑关系:允许为空 7)数据项名称:操作员名称 类型:字符型 长度:30 逻辑关系:不允许为空 8)数据项名称:操作员简称 含义说明:惟一标识一个操作员 类型:字符型 长度:10 逻辑关系:不允许为空 9)数据项名称:操作员级别 含义说明:对操作员和管理员进行区分 类型:字符型 长度:10 逻辑关系:不允许为空 10)数据项名称:图书编号 含义说明:惟一标识一个图书 类型:字符型 长度:10 逻辑关系:不允许为空 11)数据项名称:图书名称 类型:字符型 长度:50 逻辑关系:不

10、允许为空 12)数据项名称:作者 类型:字符型 长度:50 逻辑关系:不允许为空 13)数据项名称:作者 类型:字符型 长度:50 逻辑关系:不允许为空 14)数据项名称:作者 类型:字符型 长度:50 逻辑关系:不允许为空 15)数据项名称:出版社 类型:字符型 长度:50 逻辑关系:不允许为空 16)数据项名称:出版时间 类型:日期时间型 长度:8 逻辑关系:不允许为空 17)数据项名称:价格 类型:整型 长度:4 逻辑关系:不允许为空 18)数据项名称:备注 类型:字符型 长度:200 逻辑关系:允许为空 19)数据项名称:借书日期 类型:日期时间 长度:8 逻辑关系:不允许为空 20)

11、数据项名称:还书日期 类型:日期时间 长度:8 逻辑关系:不允许为空(2)数据结构描述 1)数据流名称:用户情况 含义说明:定义了一个读者的有关信息组成结构:用户情况=用户名+借书证号+密码+性别+所在系别+所在班级 2)数据流名称:操作员情况 含义说明:定义了一个操作员的有关信息 组成结构:操作员情况=操作员名称+操作员简称+操作员级别+操作员密码 3)数据流名称:图书情况 含义说明:定义了一个图书的有关信息 组成结构:图书情况=图书编号+图书名称+作者+出版社+出版时间+价格+备注(3)数据流(非数据项)说明 1)数据流名称:借书单 含义:读者借书时要填写的单据 来源:读者 去向:审核借书

12、 数据流量:250份/天 组成:借书单=借书证号+图书编号+借书日期 2)数据流名称:还书单 含义:读者还书时要填写的单据 来源:读者 去向:审核还书 数据流量:250份/天 组成:还书单=图书编号+还书日期(4)数据存储说明 1)数据存储名称:图书数据表 含义说明:存放图书的有关信息 组成结构:图书编号+图书名称+作者+出版社+出版时间+价格+备注 说明;书号具有惟一性和非空性 2)数据存储名称:用户信息表 含义说明:存放读者的注册信息 组成结构:用户名+借书证号+密码+性别+所在系别+所在班级 说明:证号具有惟一性和非空性,性别只能是男和女 3)数据存储名称:借书记录 含义说明:存放读者的

13、借书,还书信息 组成结构:借书证号+图书编号+借书日期+还书日期 说明:要求能够立即查询(5)处理过程说明 1)处理过程名称:图书管理 输入:图书情况, 输出:图书记录 处理说明:对馆内所有图书按图书编号进行管理,将图书数据数据化,存储图书数据表中。 2)处理过程名称:读者管理 输入:读者情况, 输出:读者记录 处理说明:建立读者信息表,对读者进行统一编号,实现读者记录 表的增删改维护功能。 3)处理过程名称:查看数目 输入:借书请求,读者, 输出:借书记录,图书信息 处理说明:实现根据图书编号等查询图书。 4)处理过程名称:借书处理 输入:图书情况,读者,借书记录 输出:借书记录 处理说明:

14、确认读者符合借书条件,办理借书手续。 5)处理过程名称:还书处理 输入:图书情况, 输出:借书记录 处理说明:对照相应的图书编号可办理还书手续。 6)处理过程名称:安全管理 输入:操作员情况,用户情况 输出:操作员级别,操作员记录,用户记录 处理说明:通过用户名和口令,确认用户身份,保证系统的安全型。3 系统数据库设计3.1 数据库概念结构设计 读者E-R图中包括的属性有读者证号,姓名,学号,性别,所在系别类别,这些属性项阐明了读者实体。 图3-1 读者E-R图 图书E-R图中包括的属性有图书编号,图书名称,出版社,作者,单价类别,这些属性项阐明了图书实体。 图书借阅E-R图中包括的属性有读者

15、证号,图书编号,借阅时间,归还时间类别,这些属性项阐明了图书借阅实体。 图3-3 图书借阅E-R图图书征订E-R图中包括的属性有读者证号,图书名称,出版社,作者,这些属性阐明了图书征订实体。 3.2 数据库逻辑结构设计1) E-R图向关系模型的转换将总体概念结构E-R图转化成关系模型: 读者(学号,读书证件号,姓名,性别,所在系别) 图书借阅(图书编号,图书名称,作者,出版社,单价,借出时间,归还时间)2) 相应的表结构,如表3-1到表3-5所示: 表3-1 读者信息表 表3-2 图书信息表 表3-3 图书借阅表 表3-4 图书征订表3.3 数据库物理结构设计 根据本系统的特点,采用B+树索引

16、存取方法建立索引。 对图书类别,剩余数量,作者,登入,价格,图书信息这六个属性建立索引。 对图书类别,图书信息,作者组合索引,对图书类别,图书信息,价格建立组合索引, 对读者,登录界面建立组合索引,对剩余数量,价格建立组合索引。3.4 数据库关系设计 图3-5 图书管理系统整体E-R图4 系统主要功能模块设计与实现4.1 图书管理员登陆界面模块设计 登陆界面如图4-1所示: 图4-1 登陆界面4.2 主界面模块设计 主界面如图4-2所示: 图4-2 主界面4.3 增加用户模块设计 增加用户界面如图4-3所示: 图4-3 增加用户界面4.4 添加图书模块设计 添加图书模块界面如图4-4所示: 图

17、4-4 添加图书界面4.5 图书查询模块设计 1)图书查询界面如图4-5所示: 图4-5 图书查询界面2)查询结果如图4-6所示: 图4-6 查询结果4.6 图书借阅模块设计1)当选择已被借出的书时,则不能再借此书如图4-7所示: 图4-7 查询结果2)当选择未被借出的书时,则会按照下一步进行选择读者信息,进行借书,如图4-8及图4-9所示: 图4-8 图书借阅界面 图4-9 借阅结果界面4.7 添加读者模块设计点击读者管理读者信息管理添加读者信息,会出现添加读者信息的界面,此界面是增加阅读者的信息以及图书管理系统库中的读者信息,读者包括教师、学生、外来人员三个级别,填写好信息后点击确定,则会

18、成功为库中增加读者信息,如图4-10所示: 图4-10 添加读者界面4.8 查询读者信息模块设计点击读者管理查询读者信息,则会出现有按照读者编号、读者姓名或者读者种类为搜索依据的复选框,点击后会按照要求显示所查信息,其中包括读者编号、读者姓名、读者性别、读者种类、工作单位、家庭地址、登记日期以及借书数量等信息,如图4-11所示:图4-11 查询读者信息界面4.9 还书模块设计 点击图书借阅管理还书管理添加还书信息会出现还书界面,如图4-12及4-13所示: 图4-12 还书界面选择要还书的信息,点击还书,则会出现提示信息,选择是,则会提示成功还书。如图: 图4-13 还书结果界面4.10 退出

19、系统界面设计 点击系统管理退出系统,则会出现提示信息“退出系统”,点击“是”或“退出系统”,则会退出本系统,如图4-14所示: 图4-14 退出界面4.11 模块代码1)全局变量定义:Option ExplicitPublic Con As New ADODB.Connection 连接对象Public UserID As String 当前用户IDPublic Book_num As String 要借书的编号Public Rs As New ADODB.Recordset 记录集Public User_Quanxian As Integer 用户的权限Public pwd As Strin

20、g用户密码2)图书管理系统登录系统Private Sub Command1_Click() If Combo1.Text = Then MsgBox 请选择用户名!, , 登录 Combo1.SetFocus Exit Sub End If If Text2.Text = Then MsgBox 请输入密码!, , 登录 Text2.SetFocus Exit Sub End If If RsUser.State = 1 Then RsUser.Close Sqltxt = select * from 系统用户 where 用户名= & Combo1.Text & RsUser.Open Sq

21、ltxt, Con, adOpenStatic, adLockPessimistic Text2.SetFocus If RsUser.EOF() Then MsgBox 该用户不存在 & vbCrLf & 请重新输入或联系管理员, vbOKCancel + vbExclamation Combo1.SetFocus Exit Sub End If Pwd = Trim(RsUser.Fields(密码) If Text2.Text = Pwd Then UserID = Combo1.Text User_Qx = Trim(RsUser.Fields(2) Me.Hide MsgBox 登陆

22、成功! frmmain.Show Else MsgBox 密码无效,请重试!您还有 & 2 - Cnt & 次机会, , 登录 Text2.SetFocus Cnt = Cnt + 1 If 3 - Cnt = 0 Then Unload Me End If End IfEnd Sub3)图书管理系统(frmMain)Dim rsUser As ADODB.RecordsetDim aa As StringDim bb As StringDim cc As IntegerPrivate Sub Command1_Click() Dim sql As String Set rsUser = Ne

23、w ADODB.Recordset If Combo1.Text = Then Label1.Caption = 请选择用户名! Combo1.SetFocus Exit Sub End If If Text1.Text = Then Label1.Caption = 请输入密码! Text1.SetFocus Exit Sub End If sql = select * from 系统用户 where 用户名= & Combo1.Text & rsUser.Open sql, conn, adOpenStatic, adLockBatchOptimistic 打开记录集获取该用户密码 If

24、rsUser.EOF Then Label1.Caption = 此用户不存在 Exit Sub End If pwd = Trim(rsUser.Fields(密码) QuanXian = Trim(rsUser.Fields(0) If Text1.Text = pwd Then userid = Combo1.Text Open App.Path & 123.txt For Input As #1 Do While Not EOF(1) Line Input #1, bb If userid = bb Then cc = 2 End If Loop Close #1 If cc = 1

25、Then Open App.Path & 123.txt For Append As #1 Print #1, userid Close #1 End If cc = 1 rsUser.Close Unload Me frmmain.Show Else Label1.Caption = 密码无效,请重新输入!还有2次机会 Text1.SetFocus cs = cs + 1 If 3 - cs = 0 Then Unload Me End If End IfEnd SubPrivate Sub Command2_Click(Index As Integer)Unload MeEnd SubPr

26、ivate Sub Form_Load()Dim cnnstr As StringDim sql As String cc = 1 Set rsUser = New ADODB.Recordset cnnstr = filedsn=st1.dsn;user id=sa;password=123; cnnstr = provider=microsoft.jet.oledb.4.0; & data source= + App.Path + book.mdb conn.Open cnnstr sql = select 用户名 from 系统用户 rsUser.Open sql, conn, adOp

27、enStatic, adLockBatchOptimistic Open App.Path & 123.txt For Input As #1 Do While Not EOF(1) Line Input #1, aa Combo1.AddItem aa Loop Close #1 cs = 0 rsUser.CloseEnd Sub5 系统特点与不足5.1 优点本系统是一个校园图书管理系统,具有一定实用性的数据库信息管理系统。它只要完成了对图书的分类,图书进步信息管理,图书入库管理,图书盘点管理,节约证件类型管理,借阅证件管理,图书借阅,用户管理。本系统采用当前流行的VB来完成整个系统的设计

28、,在数据库的设计上利用了SQL Server的便利性和实用性。5.2 需要进一步改进的地方 关于本次设计的命题,我的设计只能提供其基本的功能。还有许多的设想由于时间和自身和因素无法得以实现,例如:超出借阅时间的相应罚款,管理员和学生分别登陆界面等,这些应全部包括在内,这不能不说是本次设计的遗憾之处。6 总结6.1 课程设计主要问题及解决办法在系统的开发时,遇到了很多问题,比如在建数据库时,不但要符合实验的要求还要与同组人的相联系起来,因此在编写数据库时进行了多次的修改。在更换电脑进行数据库连接时也常犯些小错误,如忘记填写服务器名称或则是个错误的服务器名称导致在连接测试时老是报错。还有在进行界面

29、设计时,只是按照参考书上的进行设计,最后导致编程的时候很难和数据库表的记录符合上,于是抛开了所有的参考书,自己根据数据库的内容设计了界面,独立的编程,虽然有点过于简单。6.2 收获与建议在本次课程设计中,通过老师的教导和自己的学习,我基本掌握了Visual Basic编程语言,这个过程也启发了自己的思维,提高了我的动手能力,这是我在课本中学不到的。它为我们在以后的学习上发挥自己的才能奠定了坚实的基础。我也认识到自己在计算机许多专业知识方面还有许多欠缺,之后我会更加努力完善自己,把专业课学好成为有用之人。参考文献1 李怀明 等.Visual Basic 6.0 中文版 参考详解.清华大学出版社. 1999,11.2 李善茂 等.Visual Basic 6.0 高级编程技巧.电子工业出版社. 1999,5.3 谭浩强 主编.Visual Basic 6.0 中文版 提高与应用.电子工业出版社. 1999,11.4 王珊,萨师煊等. 数据库系统概论(第四版).北京高等教育出版社.2006,5.

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号