学校的图书借阅管理系统
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
东莞理工学院
课程设计
课程名称:数据库原理与应用设计题目:学校图书借阅管理系统
院系名称计算机学院
班级 11软件工程1班
学生姓名
学号
组员
指导教师
时间 2014年06月30日
1 题目
1 学校图书借阅管理系统
功能要求:
●实现图书信息、类别、出版社等信息的管理;
●实现读者信息、借阅证信息的管理;
●实现图书的借阅、续借、归还管理;
●实现超期罚款管理、收款管理;
●分别实现借书和还书时自动更新图书信息的在册数量;
●创建视图视图以方便查询各种图书的书号、书名、总数和在册数;
●实现查询指定读者借阅图书的情况;
●建立数据库相关表之间的参照完整性约束。
2 需求分析
2.1 需求分析
图书信息、借阅证件信息及图书借阅管理是一件非常繁琐但又及其重要的工作,因此有必要开发一个数据库管理系统,用来管理这些信息。这篇课程设计介绍的就是图书借阅信息管理系统。系统的具体要求如下所述:
1、能够实现添加图书的时候自动增加在册数
2、能够实现对读者和借书证的管理
3、能够实现借阅和归还图书,并能自动修改图书的在册数量和流通情况
4.对于超过借书期限未归还图书的用户进行罚款
5. 能够实现对未超过应归还日期的图书续借
6.对于达到借书上限的读者拒借
7.对于逾期未续借的不予续借
8.能够查询各种图书的条形码、书号、书名、总数和在册数
9.能够查询指定用户的借阅历史
2.2 数据字典
Reader
LibraryCard
Book
BorrowBook
Renew
ReturnBook
Fine
3 数据库概念设计图书实体类E-R图
借书证实体类E-R图
读者实体类E-R图
借书证与图书之间的一对多的借阅关系
借书证与图书之间的一对多续借关系
借书证与图书之间的一对多归还关系
完整ER图
4 数据库逻辑设计
具体的基本E-R图向关系模型的转化结果如下:
读者(身份证号,姓名,性别,所在单位)
主键: 身份证号
外键:无
借书证(借书证号,身份证号,可借书数,借书期限)
主键:借书证号
外键:身份证号
图书(图书条形码,图书标准码,书名,作者,图书类别,出版社,定价,在册数量,流通状态)
主键:图书条形码
外键:无
借阅(借书证号,图书条形码,借书日期,应归还日期)
主键: 借书证号,图书条形码,借书日期
外键:借书证号,图书条形码
续借(借书证号,图书条形码,借书日期,续借次数)
主键:借书证号,图书条形码,借书日期
外键:借书证号,图书条形码,借书日期
归还(借书证号,图书条形码,借书日期,归还日期)
主键:借书证号,图书条形码,借书日期
外键:借书证号,图书条形码,借书日期
罚款(借书证号,图书条形码,借书日期,罚款金额,缴款日期)主键: 借书证号,图书条形码,借书日期
外键:借书证号,图书条形码,借书日期
5 数据库物理设计
(1)创建数据库
(2)创建读者表
(3)创建借书证表
(4)创建图书表
(5)创建借阅表
(6)创建续借表
(7)创建还书表
(8)创建罚款表
(9)在Book中创建Trg_Book_ins
(10)在Book中创建Trg_Book_del
(11)在Book中创建Trg_Book_upd
(12)在BookBorrowDate中创建v_BorrowDate_ins
(13)在Renew中创建v_Renew_upd
(14)在ReturnBook中创建v_ReturnBook_upd
(15)创建视图v_Book
(16)创建视图v_BorrowSituation
6 操作功能实现(1)添加读者
(2)修改读者
(3)删除读者
(4)查询读者
(5)添加借书证
(6)修改借书证
(7)删除借书证
(8)查询借书证信息
(9)添加图书,并触发trg_Book_ins自动修改在册数
(10)修改图书
(11)修改图书的标准号,并触发trg_Book_upd自动修改在册数
(12)删除图书,触发trg_Book_del修改在册数量
(13)添加借书记录,触发trg_BookBorrow_ins,自动减少在册数,把记录分别添加到 Renew 和 ReturnBook中
(14)续借,触发trg_Renwe_upd,应归还时间
(15)还书,修改系统时间使书逾期归还,触发trg_Return_upd,自动增加在册数,并生成罚款记录
(16)缴清罚款
(17)使用v_Book视图查询图书信息
(18)使用视图v_BorrowSituation查询借阅情况
(19)级联修改BorrowBook 、Renew、ReturnBook、Fine
(20)级联删除BorrowBook 、Renew、ReturnBook、Fine
7 总结与体会
首先要建立一个完整的管理系统,就必须明白这个系统所包含的基本内容、处理一些怎样的信息等。最主要的是画出他们的E-R图,便可直观的看出他们关系。在设计的时候,有时候也会感到没有思路了,或许是只有一点点的头绪,可经过对图的分析和认真观察他们的关系后,便有了新的思路和闪光点。最后根据自己的整理资料将每一步都运用SQL语言执行出来,并且看以下是否符合结果要求。我想经过这次课程设计可以更好的将所学知识运用到实际中去。也让我加深了对数据库知识的认识和了解。在这次实践设计过程中,我懂得了如何将所学的理论知识运用到实际中去,使得所学的知识能够融会贯通。
同时,在课程设计过程中,我懂得了许多知识,增加了我对数据库的兴趣 ,经过这次的数据库程序课程设计,使我了解了更多数据库原理与应用这门课程,对以前不太理解和熟悉的内容有更多的掌握,虽然这次的图书借阅管理系统并没有做得很好,甚至还有很多地方都存在着不足甚至是错误,在存储过程方面就没有做好,但是还是增强了自己对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验。归根结底还是基础不扎实,不能够灵活运用课本知识,还是要不断认真的学习和实践,这样才能更好地运用书本知识,增强我们的个人能力。
在整个数据库课程设计的过程中,虽然遇到了很多麻烦,但最后把它做来的时候感觉很有成就感,也让我更加喜欢这门课程了。总的来说,这次课程设计还算比较满意,今后还要更加努力!