Mysql---图书借阅管理系统
目录
一、引言
二、需求分析
1.需求描述
2.任务描述
三、概念设计
1.根据语义画出ER图
2.按照操作完成sql语句的设计并实现
2.1 表格展现
2.2 创建读者表
2.3 创建图书表
2.4 创建借阅记录表
2.5 插入读者个人信息
2.6 插入图书信息
2.7 查询表User和Book。
2.8 为User表的姓名字段增加普通索引
2.9 为Book表的书名字段增加普通索引
2.10 设计借书步骤。
2.11 查询表BorrowRecord。
2.12 设计还书步骤。
2.13 查询表BorrowRecord。
四、总结
1.实验成果
2.遇到的问题及解决方法
3.实验收获
一、引言
随着信息技术的飞速发展,图书馆的管理也在不断向数字化、智能化方向迈进。数据库技术作为信息管理的核心技术之一,在图书馆系统中发挥着至关重要的作用。通过数据库图书馆系统课程设计实验,我们可以深入了解数据库在图书馆管理中的应用,掌握数据库设计与实现的方法和技巧。
二、需求分析
1.需求描述
设计一个图书借阅管理系统,用于管理图书信息、读者信息、借阅记录以及图书归还记录。系统需要支持图书借阅、归还以及查询借阅历史等功能。
2.任务描述
存储图书信息,包含图书ID、书名、作者、出版日期、库存数量等字段。
存储读者信息,包含读者ID、姓名、联系方式、借阅证号等字段。
存储借阅记录信息,记录借阅ID、读者ID、图书ID、借阅日期等字段。
存储归还记录信息,记录归还ID、借阅ID、归还日期、是否逾期等字段。
三、概念设计
1.根据语义画出ER图
2.按照操作完成sql语句的设计并实现
2.1 表格展现
表1
读者ID | 姓名 | 联系方式 | 借阅证号 |
1111 | 张三 | 15565739551 | 1111 |
1234 | 杨十三 | 16846588897 | 1234 |
2222 | 李四 | 17854339776 | 2222 |
3210 | 梁二十二 | 15549876397 | 3210 |
3333 | 王五 | 18843668754 | 3333 |
4320 | 许二十一 | 15565739569 | 4320 |
4321 | 马十六 | 15565739564 | 4321 |
4444 | 赵六 | 16537865438 | 4444 |
5432 | 罗二十 | 15565739568 | 5432 |
5555 | 孙七 | 15565739555 | 5555 |
5678 | 胡十四 | 15565739562 | 5678 |
6543 | 林十九 | 15565739567 | 6543 |
6666 | 周八 | 15565739556 | 6666 |
7777 | 吴九 | 15565739557 | 7777 |
8765 | 何十七 | 15565739565 | 8765 |
8888 | 郑十 | 15565739558 | 8888 |
9876 | 朱十五 | 15565739563 | 9876 |
9999 | 陈十一 | 15565739559 | 9999 |
10000 | 刘十二 | 15565739560 | 0000 |
表2
图书id | 书名 | 作者 | 出版日期 | 库存数量 |
1000 | 《海底两万里》 | 儒勒.凡尔纳 | 2013-11-24 | 1020 |
1001 | 《恶意》 | 东野圭吾 | 2014-08-23 | 1029 |
1098 | 《呼啸山庄》 | 艾米莉.勃朗特 | 2013-02-15 | 1011 |
1234 | 云边有座小卖铺 | 张嘉佳 | 2012-03-04 | 999 |
2000 | 《嫌疑人X的献身》 | 东野圭吾 | 2014-07-27 | 1028 |
2100 | 《格列佛游记》 | 乔纳森.斯威夫特 | 2013-10-23 | 1019 |
2109 | 《麦田里的守望者》 | 塞林格 | 2013-01-14 | 1010 |
2345 | 天官赐福 | 墨香铜臭 | 2020-10-31 | 999 |
3000 | 《白夜行》 | 东野圭吾 | 2014-06-18 | 1027 |
3210 | 《老人与海》 | 海明威 | 2012-12-13 | 1009 |
3299 | 《鲁滨逊漂流记》 | 丹尼尔.笛福 | 2013-09-22 | 1018 |
4000 | 《挪威的森林》 | 村上春树 | 2014-05-30 | 1026 |
4320 | 《简?爱》 | 夏洛蒂.勃朗特 | 2012-11-12 | 1008 |
4321 | 《百年孤独》 | 加西亚.马尔克斯 | 2012-06-07 | 1003 |
4390 | 《大卫?科波菲尔》 | 查尔斯.狄更斯 | 2013-08-21 | 1016 |
5000 | 《了不起的盖茨比》 | 菲茨杰拉德 | 2014-04-29 | 1025 |
5430 | 《双城记》 | 查尔斯.狄更斯 | 2013-07-20 | 1016 |
5432 | 《巴黎圣母院》 | 维克多.雨果 | 2012-10-11 | 1007 |
5678 | 《平凡的世界》 | 路遥 | 2012-04-05 | 1001 |
6000 | 《飘》 | 玛格丽特.米切尔 | 2014-03-28 | 1024 |
6540 | 《茶花女》 | 小仲马 | 2013-06-19 | 1015 |
6543 | 《傲慢与偏见》 | 简?奥斯汀 | 2012-09-10 | 1006 |
7000 | 《三个火枪手》 | 大仲马 | 2014-02-27 | 1023 |
7650 | 《红与黑》 | 司汤达 | 2013-05-18 | 1014 |
7654 | 《解忧杂货店》 | 东野圭吾 | 2012-08-09 | 1005 |
8000 | 《基督山伯爵》 | 大仲马 | 2014-01-26 | 1022 |
8760 | 《安娜?卡列尼娜》 | 列夫.托尔斯泰 | 2013-04-17 | 1013 |
8765 | 《追风筝的人》 | 卡勒德.胡赛尼 | 2012-07-08 | 1004 |
9000 | 《包法利夫人》 | 福楼拜 | 2013-12-25 | 1021 |
9870 | 《战争与和平》 | 列夫.托尔斯泰 | 2013-03-16 | 1012 |
9876 | 《活着》 | 余华 | 2012-05-06 | 1002 |
表3
借阅ID | 读者ID | 图书ID | 借阅日期 | 归还日期 | 是否逾期 |
3 | 2222 | 1234 | 2024-11-15 | 2024-11-15 | 否 |
4 | 3333 | 2345 | 2024-11-15 | 2024-11-15 | 否 |
5 | 4444 | 1234 | 2024-11-15 | 2024-11-15 | 否 |
2.2 创建读者表
表名为User,包含读者ID、姓名、联系方式、借阅证号等字段来存储读者信息。
2.3 创建图书表
表名为Book,包括图书ID、书名、作者、出版日期、库存数量等字段,为了存储图书信息。
2.4 创建借阅记录表
表名为BorrowRecord,包括记录借阅ID、读者ID、图书ID、借阅日期等字段 ,存储借阅记录信息 。
2.5 插入读者个人信息
包括个人id,姓名,联系方式,借阅证号等
2.6 插入图书信息
包括图书id,书名,作者,出版日期,库存数量等
2.7 查询表User和Book。
2.8 为User表的姓名字段增加普通索引
2.9 为Book表的书名字段增加普通索引
2.10 设计借书步骤。
2.11 查询表BorrowRecord。
2.12 设计还书步骤。
2.13 查询表BorrowRecord。
四、总结
1.实验成果
- 成功设计并实现了一个数据库图书馆系统用于管理图书信息、读者信息、借阅记录以及图书归还记录。系统需要支持图书借阅、归还以及查询借阅历史等功能。
- 运用了数据库设计的基本流程和方法,从需求分析到概念结构设计、逻辑结构设计、物理结构设计,再到数据库的实现和应用程序的开发,整个过程较为规范和严谨。
- 熟练掌握了数据库管理系统的使用,能够运用 SQL 语言进行数据库的创建、表的设计、数据的插入、查询、更新和删除操作。同时,也学会了使用数据库管理工具进行数据库的维护和管理。
- 通过小组合作,培养了团队合作精神和沟通能力。小组成员分工明确,相互协作,共同解决了实验过程中遇到的各种问题。
2.遇到的问题及解决方法
- 需求分析不全面:在实验初期,对图书馆系统的需求分析不够全面,导致在后续的设计和实现过程中出现了一些功能缺失和不合理的地方。解决方法是重新进行需求调研,了解他们的实际需求,对需求分析进行完善。
- 数据库设计不合理:在逻辑结构设计阶段,由于对数据库的规范化理解不够深入,导致设计出的表结构存在一些冗余和不合理的地方。解决方法是重新学习数据库规范化理论,对表结构进行优化,消除冗余,提高数据的完整性和一致性。
- 应用程序开发技术难题:在应用程序开发过程中,遇到了一些技术难题,如界面设计不美观、功能实现不流畅等。解决方法是通过查阅相关资料、参考优秀的开源项目和请教老师,不断尝试和改进,最终解决了这些技术难题。
3.实验收获
- 对数据库设计和实现有了更深入的理解和掌握,提高了实际操作能力。
- 学会了如何进行团队合作,提高了沟通和协作能力。
- 培养了解决问题的能力,在遇到问题时能够积极思考,寻找解决方案。
- 增强了对数据库技术在实际应用中的认识,为今后从事相关工作打下了基础。
总之,通过本次数据库图书馆系统课程设计实验,我们取得了一定的成果,也收获了很多经验和教训。在今后的学习和工作中,我们将继续努力,不断提高自己的专业水平和实践能力,为数据库技术的发展和应用做出更大的贡献。