ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:1,016.18KB ,
资源ID:7445814      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/7445814.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(图书借阅管理系统.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

图书借阅管理系统.docx

1、图书借阅管理系统重庆文理学院学校图书借阅管理系统姓名: 王崟丞学号: 201502334079班级: 2015级信息与计算科学指导老师: 刘登刚一、 题目及要求说明。题目:学校图书借阅管理系统I、报告题目要求(1)任选一个项目,调查分析一个具体的或模拟的实例;(2)描述该实例的业务信息和管理工作的要求;(3)列出实体、联系;(4)指出实体和联系的属性;(5)画出E-R图;(6)将E-R图转换成关系模式,并注明主键和外键;(7)建立数据字典;(8)创建数据库;(9)根据题目的要求写查询、存储过程、触发器等。II、项目举例功能要求: 实现图书信息、类别、出版社等信息的管理; 实现读者信息、借阅证信

2、息的管理; 实现图书的借阅、续借、归还管理; 实现超期罚款管理、收款管理; 创建触发器,分别实现借书和还书时自动更新图书信息的在册数量; 创建视图查询各种图书的书号、书名、总数和在册数; 创建存储过程查询指定读者借阅图书的情况; 建立数据库相关表之间的参照完整性约束。二、 说明书。(I)问题的描述图书馆管理系统开发。系统开发的总的设计目标是实现图书管理的系统化、规范化和自动化,实现对图书资料的集中统一的管理。本系统主要实现对图书借阅信息的管理,主要功能为管理有关读者、图书、借阅、征订和管理员的信息等。图书借阅管理系统是一种基于集中统一规划的数据库数据管理新模式。本系统主要实现对图书借阅信息的管

3、理,主要功能为管理有关读者、图书、借阅和管理员的信息等。图书借阅管理系统是一种基于集中统一规划的数据库数据管理新模式。本系统结构分为基础信息维护,读者管理,图书管理,图书流通管理。读者管理可以浏览读者的信息,可以对读者信息进行维护。图书管理可以浏览图书的信息,可以对图书信息进行维护。借阅管理可以显示当前数据库中书籍借阅情况,可以对借阅信息进行维护。读者管理可以浏览读者的信息,可以对读者信息进行维护。图书管理可以浏览图书的信息,可以对图书信息进行维护。借阅管理可以显示当前数据库中书籍借阅情况,可以对借阅信息进行维护。(II)需求分析 (II.1)需求分析(II.1.1)基础信息维护在图书借阅管理

4、系统中,基础信息包括:读者信息和图书信息。这些信息可以在读者档案管理,图书档案管理中应用。在读者档案管理中,读者的类别信息实现读者权限划分;在图书档案管理中,图书类型信息实现图书类别的划分。(II.1.2)读者管理管理员对读者管理可以实现浏览,添加,修改操作,在添加读者信息时需一个读者证号对读者身份进行辨别,此编号必须唯一,还需要登记读者的详细信息。(II.1.3)图书管理管理员对图书管理可实现添加,修改和删除操作,在添加图书信息时需给图书建立一个图书编号,编号唯一。还需要等级图书的详细信息,在实现图书修改时,图书编号不可修改。实现图书信息的删除时要验证图书是否归还,如没有归还,将不能实现图书

5、的删改。(II.1.4)图书流通管理图书流通管理需要实现图书的借阅,归还功能。图书的借阅时要登记读者证号和图书编号,以及管借阅和归还的时间。图书归还要检查是否逾期,若逾期将交罚款,否则正常返还。(II.2)系统功能结构(1) 更新图书:管理员可对图书信息进行录入、修改、查询、删除。(2)查询图书:读者和管理员可随时查询图书的信息及最新入管图书。(3)借阅图书:读者通过浏览图书信息确定要借阅的书籍,由管理员处理借阅信息,并进行借阅登记。(4)归还图书:读者将已借阅的图书归还给图书馆,管理员检查图书并做相应的登记。(5)读者注册:读者通过注册页面,填写个人信息,系统显示信息通过后,管理员给予读者借

6、书卡一张。(6)续借管理:读者想继续阅读已到归还日期的图书,可通过网上续借或当面续借。(7)罚款处理:读者未按时归还图书也未办理续借或照成图书损坏,则按照书馆规定由管理员处罚相应金额的罚款。(II.3)数据流图1 顶层数据流图2 中层数据流图3 底层数据流图(A) 注册管理数据流程底图。(B) 还书管理数据流程底图。(C) 借书管理数据流程底图。(D) 图书管理数据流程底图。(III)逻辑结构设计(III.1)局部E-R图。(III.1.1)注册管理E-R图(III.1.2)还书管理E-R图(III.1.3)借书管理E-R图(III.1.4)图书管理E-R图(III.2)全局E-R图。(III

7、.3)数据字典。(III.3.1)数据流条目注册申请数据流条目数据流名称注册申请简述读者第一次想图书馆借阅书籍时需要注册登记别名无组成注册申请=申请卡号+姓名+密码+注册时间+联系方式图书借阅数据流条目数据流名称图书借阅简述读者向图书馆进行图书借阅是需要进行相应的登记别名无组成图书借阅=借书卡号+密码+书名+借阅数量+借阅日期(III.3.2)存储条目读书信息文件条目 文件名读者信息简述包括所有读者的信息别名无组成读者信息=借书卡号+姓名+密码+注册时间+联系方式借/还信息文件条目文件名借/还信息简述包括所有读者借书以及归还图书的所有记录别名无组成借/还信息=借书卡号+姓名+密码+借书时间+还

8、书时间+联系方式 图书信息文件条目文件名图书信息简述包括所有图书的信息别名无组成图书信息=图书编号+图书名称+图书位置+库存量+单价 罚款信息文件条目文件名罚款文件简述包含所有罚款信息别名无组成罚款信息=借书卡号+密码+姓名+罚款原因+罚款金额(III.3.3)数据项条目1 借书卡号数据项条目文件名借书卡号简述每个读者注册时的卡号别名无组成借书卡号=年份(XXXX)+月份(XX)+序号(XX)值类型9位数字取值范围2 图书编号数据项条目文件名图书编号简述包括图书的具体位置别名无组成图书编号=图示类别(XXXXX)+书架号(XXXX)+序列号(XX)+图书名称(XXXXX)值类型17位数字取值范

9、围(IV) 数据库实现(IV.1)数据库及数据库对象创建的SQL语句。 tb_reader学生表CREATE TABLE tb_reader ( readerid varchar(10) NOT NULL, rname varchar(20) NOT NULL, sex varchar(2) NOT NULL, grade varchar(1) NOT NULL, Profession varchar(20) NOT NULL, ifeffective tinyint(4) NOT NULL, email varchar(20) DEFAULT NULL, PRIMARY KEY (reade

10、rid) tb_manager管理员表CREATE TABLE tb_manager ( managerid varchar(10) NOT NULL, loginname varchar(20) NOT NULL, password varchar(20) NOT NULL, PRIMARY KEY (managerid) tb_borrow借阅表CREATE TABLE tb_borrow ( borrowid int(11) NOT NULL AUTO_INCREMENT, bookid varchar(10) NOT NULL, readerid varchar(10) NOT NUL

11、L, managerid varchar(10) NOT NULL, borrowTime datetime NOT NULL, backTime datetime NOT NULL, ifreborrow tinyint(4) NOT NULL, PRIMARY KEY (borrowid) tb_book图书表CREATE TABLE tb_book ( bookid varchar(10) NOT NULL, bname varchar(20) DEFAULT NULL, type varchar(20) DEFAULT NULL, author varchar(20) DEFAULT

12、NULL, price float(10,2) DEFAULT NULL, publish varchar(20) DEFAULT NULL, quantity tinyint(4) NOT NULL, remain tinyint(4) NOT NULL, PRIMARY KEY (bookid) tb_punishment超期处罚表CREATE TABLE tb_book ( bookid varchar(10) NOT NULL, bname varchar(20) DEFAULT NULL, type varchar(20) DEFAULT NULL, author varchar(2

13、0) DEFAULT NULL, price float(10,2) DEFAULT NULL, publish varchar(20) DEFAULT NULL, quantity tinyint(4) NOT NULL, remain tinyint(4) NOT NULL, PRIMARY KEY (bookid) tb_purview管理员权限设置表CREATE TABLE tb_book ( bookid varchar(10) NOT NULL, bname varchar(20) DEFAULT NULL, type varchar(20) DEFAULT NULL, autho

14、r varchar(20) DEFAULT NULL, price float(10,2) DEFAULT NULL, publish varchar(20) DEFAULT NULL, quantity tinyint(4) NOT NULL, remain tinyint(4) NOT NULL, PRIMARY KEY (bookid)(IV.2)存储过程创建存储过程,输入读者id查询出书名、借阅时间、归还时间、管理员id、是否续借情况 create procedure p readerid_in varchar(10), bookid_in varchar (20), bname_ou

15、t varchar (20) output, borrowTine_out datetime output, backTime_out datetime output, managerid_out varchar (20) output, ifxeborom_out tinyint output as select bname_out=bname, borrowTime_out=borrowTime backTime_out =backTime, managerid_out=managerid, ifreborrow_out=ifreborrow from tb_book,tb_borrow

16、where tb_borrow.readerid=readerid_in and tb_borrow.bookid=bookid_in and tb_book.bookid=b_borrow.bookid存储过程使用 declare readerid_in varchar(10), bookid_in varchar(20), bname_out varchar (20), borrowTime_out datetime, backTime_out datetime, managerid_out varchar(10) , ifreborrow_out tinyintselect reader

17、id_in=2010508033seleet bookid_in=005exec p readerid_in, bookid_in, bname_outoutput, borrowTime_out output,backTime_outoutput, managerid_out output, ifreborrow_out outputprint 书名: +bname. outprint 借书吋囘: +rtrim(borrowTime_ outprint 还书肘囘: +tim(backTime_ outprint 管理员编号: +managerid_outprint 是否续借: +rtrim(

18、ifreborrow_out)(IV.3)触发器 (IV.3.1) 借书触发器。当借书时,图书表中的remain(剩余图书)自动减一。create trigger t_ borrowon tb_borrow for insertasdeclare bookid_read varchar (10) select bookid read=bookid from insertedbeginupdate tb_book set remain=remain-1 where bookid=bookid_readEnd (IV.3.2) 还书触发器。当还书时,图书表中的remain自动加一 。create

19、trigger t_backon tb_borrow for updateas if update (backTime)declare bookid_read varchar (10 select bookid_read=bookid from insertedbeginupdate tb_ book set remain=remin+1 where bookid=bookid_ readEnd (IV.3.3) 罚款触发器,当借阅图书短期时,自动在punishment表中添加罚款记录。记录罚款读者、书名、天数、金额并且自动将reader表中的ifeffective置为0,使该读者不能再借书。

20、create trigger t_punish on tb_borrow for update as if update (backTime) begin declare backTime datetine, borrowTime datetime, ifxeborrow tinyint, days int, days1 int, bmoney int, readerid varchar (10), bookid varchar (10) select backTime=backTime from inserted select borrowTime= borrowTime from inse

21、rted select ifreborrow=ifreborrow from insented select day=convert (int, backTime)-convert(int, boxrowTime) select readerid=readerid from inserted select bookid=bookid from inserted if days30 begin if ifreborrow=1 begin if days60 begin select days1=days-60 select money=days1*0.1 insert intotb_ punis

22、hment (readerid,bookid,days,bmoney)values (readerid, bookid, days1, bmoney) updte tb_reader set ifeffective=0 whexereaderid = readerid end end if ifreborrow=0 begin select days1=day-30 select money=days1*0.1 insert intotb_ punishment(radeeid,bookid,days,bmoney)values (readerid, bookid, days1, bmoney

23、) update tb_ reader set ifeffective=0 wherereaderid=readerid end endend (IV.3.4) 读者是否有效触发器。当读者借书时,检查reader表中的ifeffective属性,若为0则说明有短期罚款,不能借书。 crezte trigger t_ifcanborrow on tb_borrow for insert declare readerid varchar(10), ifeffective tinyint select readerid=readerid from inserted select ifeffectiv

24、e=ifeffective from tb_reader where readerid=readerid if ifeffective=0 begin1 print 您有短期罚款 rollback transactiom end(IV.4)视图 创建视图查询各种图书的书号、书名、总数和在册数。 create view view_query as select bookid, bname, quantity, remain from tb_book 创建视图查询读者的短期罚款情况。其中包括读者号。读者姓名。罚款书名,罚款金额。 create view view_reader as select

25、tb_punishment.readerid;,rname,bname,bmoney from tb_pumishment, tb book,tb_reader where tb_pumishment.bookid=tb_book.bookid and tb_punishment.readerid=tb_reader.readerid(V)结论一、数据库主要知识点 我们首先从第一章绪论了解了数据库的概念,其中有几个较为重要的知识点,即数据库(DB)、数据库系统(DBS)、数据库管理系统(DBMS)的概念以及数据库管理员(DBA) 的职责。此外本章还介绍了数据库发展的三个阶段:人工管理阶段、文件

26、系统阶段和数据库系统阶段。第二章介绍了数据模型和三层模式数据库。本章要求我们理解实体-联系方法,并学会绘制E-R 图。此外还应掌握概念数据模型的意义和传统的三大数据模型,以及数据独立性和数据库三层模式结构。接着开始着重讲述现在普遍使用的关系数据库。包括关系数据模型的数据结构和基本术语,关系模型的完整性约束和关系代数运算。重点是关系模式完整性的分类和功能,以及关系代数中集合运算和关系运算。最后介绍了关系数据库系统的三层模式结构。第五章系统讲述了关系数据库的标准语言SQL的定义功能、查询功能、操作和控制功能。重点在于数据查询功能。另外还介绍了视图的用法和动态SQL中定义、操作和查询功能。第六章的知

27、识点有:存储过程的创建和执行过程、修改和删除;触发器的基本概念,建立,插入和删除视图,插入、删除和更新类触发器。最后介绍了数据完整性。第七章介绍安全性,包括安全性措施的层次、数据库管理系统的安全功能等,用户管理和角色管理,权限管理。其他的安全问题包括:数据加密、审计、统计数据库和用户定义的安全性措施。事务管理这一章首先介绍了事务的概念、性质以及SQL 对事务的支持。并发控制干扰问题、可串行性、封锁、死锁、隔离级别、封锁与隔离级别;恢复故障类型、备份类型、日志的概念、恢复模型、备份转储、还原。第九章为关系数据理论:函数依赖术语和符号;函数依赖的公理系统Amstrong公理的内容及其正确性、逻辑蕴

28、含和闭包、公理的完备性、闭包的计算、函数依赖集的等价和最小化;规范化1NF、2NF、3NF、BCNF;模式分解。第十章:数据库设计。完善E-R模型中的概念弱实体,依赖关系,强制联系;数据库设计的过程主要掌握其建立的步骤。第十一章介绍面向对象数据库:新的数据库应用和新的数据库类型;面向对象的数据模型对象与类;对象的属性、方法和状态、对象的交互和消息、类的确定和分化、封装、继承、多态;对象关系数据库与对象数据库;面向对象数据库的研究。十二章“数据库应用的结构和开发环境”并非重点,而第十三章的内容在软件工程课程中就已经掌握,所以这两章的知识点就略过了。第十四章分布式数据库与分布式数据管理:概念;分布

29、式数据库的分布方式;分布式数据库特点和目标更新传播、分布式查询处理、目录表管理、分布式事务管理;SQL Server 的复制及其术语、复制模型。十五章数据仓库:概念;结构;数据仓库系统;建立数据仓库系统;实现数据仓 库的数据库模型;数据仓库与决策支持。最后,数据库研究和应用的新领域这一章中掌握知识库的知识即可。二、学习数据库的心得 SQL (结构化查询语言)是用于执行查询的语法。但是SQL语言也包含用于更新、插入和删除记录的语法。查询和更新指令构成了SQL的DML部分:SELECT -从数据库表中获取数据UPDATE -更新数据库表中的数据DELETE - 从数据库表中删除数据 INSERT INTO - 向数据库表中插入数据 SQL 的数据定义语言 (DDL) 部分使我们有能力创建或删除表格。我们也可以定义索引(键),规定表之间的链接,以及施加表间的约束。SQL 中最重要的 DDL 语句: CREATEDATABASE - 创建新数据库 ALTER DATABASE - 修改数据库 CREATE TABLE - 创建新表 ALTER TABLE - 变更(改变)数据库表 DROP TABLE - 删除表 CREATE INDEX - 创建索引(搜索键)DROP INDEX - 删除索引

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1