数据库报告(图书馆信息管理系统)

更新时间:2023-04-21 04:27:01 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

数据库实验报告

--图书馆信息管理系统

班级: 姓名: 学号:

一. 需求分析:

分析系统需求后可绘出图书馆信息管理系统的数据流图:

二. 数据字典:

1. 数据项描述={数据项名,数据项含义说明,别名,数据类型,长度,取值范围,逻辑关系}

{图书编号,图书入库编号,BOOKNO,INTEGER,8, ,主键}

{图书名称,图书名称,BookName,VARCHAR,不限,不限,依赖于图书编号 } {作者,图书的作者名,BAuthor,CHAR,, , 依赖于图书编号}

{分类,中图分类号,BookID,VARCHAR,不限,不限,依赖于图书编号} {出版社,图书的出版社,BPress,VARCHAR,不限,不限,依赖于图书编号}

{图书状态,描述图书状态,BStatic,Integer,1,0-3,0为在架上1为节约中2为已挂失3为已注销,无}

{读者编号,读者持有的借书卡编号,RNO,INTEGER,4,主键}

{读者姓名,读者的名字,ReaderName,CHAR,,不限,依赖于读者编号} {读者性别,读者的性别,RSex,CHAR,1,{男,女},依赖于读者编号}

{读者类型,读者分类,RType,VARCHAR,不限,{学生,教师,外来人员},依赖于读者编号} {读者部门,读者所在院系单位,RFrom,VARCHAR,不限,不限,依赖于读者编号} {借阅日期,,BTime,Date,不限,不限,无}

{归还挂失日期,归还或挂失图书发生的时间,BackTime,Date,不限,不限无}

{租借时间,某部图书的租借时间,RentLong,Date,管理员设定,管理员设定,不同图书的租借时间,无}

{借阅时限,允许借阅的时间,RentLong,Integer,管理员设定,管理员设定,无} {租金,租借费用,BFare,Float,管理员设定,管理员设定,无} {罚款,超期罚款,Fines,Float,管理员设定,管理员设定,无}

2. 数据结构描述={数据结构名,含义说明,组成}

{图书信息,图书的描述,组成:图书编号,图书名称,作者,分类,出版}}

{读者信息,读者的相关信息,组成:读者编号,读者姓名,读者性别,读者类型,读者部门}

{借阅信息,读者借阅图书相关信息,组成:读者信息,图书信息,借或租借时刻} {归还信息,读者归还图书相关信息,组成:读者信息,图书信息,归还时刻} {挂失申请,丢失图书后的挂失信息,组成:读者信息,图书信息} {退卡申请,退卡读者信息,组成:读者信息}

{租借归还信息,租借和超期未归信息,组成:读者信息,图书信息,租借时间,超期未还时间}

{罚款租金信息,租借和超期产生的费用信息,组成:读者信息,图书信息,租金,罚款}

3. 数据流描述={数据名,说明,数据流来源,数据流去向,组成:数据结构,平均流量,高峰期流量}

{借阅续借申请流,读者借书的申请,读者,“借阅续借”操作,组成:{借或续借申请},500条/天,1000条/天}

{归还登记流,读者归还登记信息,读者,“书籍归还”操作,组成:{归还登记信息},400条/天,800条/天}

{图书挂失流,读者申请图书的挂失,读者,“读者挂失”操作,组成:{挂失申请}},10条/

天,50条/天}

{退卡申请流,读者退卡申请信息,读者,“读者退卡”操作,组成:{退卡申请},1条/天,5条/天}

{图书信息流,传输图书相关信息,书籍资料,“借阅续借”操作,组成:图书信息},500条/天,1000条/天}

{借阅续借信息流,传输借阅信息,“借阅续借”操作,借阅续借归还书籍登记,组成:{借或续借申请,图书信息},500条/天,1000条/天} {归还信息流,传输图书归还信息,“书籍归还”操作,借阅续借归还书籍登记,组成:{归还登记信息},400条/天,800条/天} {丢失信息流,传输图书丢失信息,“读者挂失”操作,丢失罚款续借租金登记,组成:{挂失申请},10条/天,50条/天}

{退卡信息流,传输退卡相关信息,“读者退卡”操作,读者资料,组成:{退卡申请},5条/天,10条/天}

{查询分析信息流,传输管理员所需查询统计信息,{书籍资料,借阅续借归还书籍登记,丢失罚款续借租金登记,读者资料},“查询统计分析”操作,组成:{图书信息,借或续借申请,租借归还信息,罚款租金信息,读者信息},50条/天,100条/天} {罚款租金信息流,传输包含某读者罚款租金的信息,“归还期限租金罚款设置”操作,丢失罚款续借租金登记,组成:{罚款租金信息},200条/天,400条/天} {金额管理流,传输金额管理信息,管理员,“归还期限租金罚款设置”操作,组成:{罚款租金信息},50条/天,100条/天}

4. 数据存储描述={数据存储名,说明,流入的数据流,流出的数据流,组成:数据量,存取方式}

{书籍资料,包含入库全部书籍信息,1,图书信息流2,{查询分析信息流,图书信息流1},组成:{图书信息},1000个/天,读写}

{借阅续借归还书籍登记,包含各读者借阅续借信息与相应归还期限信息,2,{借阅续借信息流,归还信息流},{查询分析信息流,租借、归还信息流},组成:{借或租借信息流,归还登记信息流},1000个/天,读写}

{丢失罚款续借租金登记,包含各读者丢失罚款和租金的}记录信息,3,{丢失信息流,罚款租金信息流},{查询分析信息流},组成:{罚款租金信息},1000个/天,读写}

{读者资料,包含所有注册读者的资料信息,4,{退卡信息流,读者信息流},{查询分析信息流},组成:{读者信息},1000个/天,读写}

5. 处理过程描述={处理过程名,说明,输入:数据流,输出:数据流,处理:}

{借阅、续借,读者借阅请求,输入:{借阅续借申请,图书信息},输出:借阅续借信息, {归还或挂失,读者归还挂失申请,归还登记、图书挂失,归还信息、丢失信息} {退卡,退卡信息流,处理:退卡申请信息存入“读者资料”中} {管理,处理书籍的新增注销和设置,输入:{书籍管理流},输出:{图书信息流},处理:{将书籍更新信息存入“书籍资料”中}}

{查询,在收到查询统计申请后执行相查询统计操作并返回给管理员,输入:{查询统计申请流,查询分析信息流},输出:{查询统计结果流},处理:{将查询统计信息反馈给管理员}} {归还期限租金罚款设置,处理读者罚款租金的设置,输入:{金额管理流,租借、归还信息 流},输出:{罚款租金信息流},处理:{将管理员的设置信息及读者罚款租金信息存入“丢失罚款续借租金登记”中}}

三. 概念结构设计:

四. 逻辑结构设计:

1.将概念设计阶段形成的E-R图转换为与选用DBMS所支持的数据模型相符合且满足3NF要求的逻辑结构:

2.关系模式描述:

管理员信息(管理员账号,管理权限) Admin(AdminId, Authority)

读者信息(读者编号,读者姓名,读者部门,读者性别,读者类型) Readers(RNO,ReaderName,RFrom,RSex,RType)

图书信息(图书编号,作者,分类号,出版社,图书名称,图书状态) Books(BookNO,BAuthor,BookID,BPress,BookName,BStatic)

借阅续借信息(读者编号,图书编号,借阅时间,到期时间,归还或挂失时间) Rent(RNO,BookNO, DateCheckout, DateDue, DateReturned)

租金罚款信息(读者编号,图书编号,借阅时间,罚款金额,租借金额) Rent(RNO,BookNO, DateCheckout, FineAmount, RentAmount) 租金罚款设定(每日租金,每日罚款) FareSet(Rent,Fines) 租期设定(租期) Rentday(Day)

五. 物理实现:

下面给出了系统的实现及查询:

1. 书籍资料查询

2.读者资料查询

3.书籍借阅、归还查询

4.超期未还查询

5.图书分类统计(以出版社为例)

6. 读者分类统计(以读者单位为例)

7.书籍借阅排行榜

8.读者借阅排行榜

六. 实验小结

通过本次数据库的课题设计,我对数据库有了更全面更深刻的认识和学习,

对其基本的概念知识更熟识,牢固的掌握它们是我们后续学习的基础,在操作向表中添加数据,插入、删除、更新的方法,对视图的建立及操作方法,学会使用索引。我想,在今后的学习中,我会更加巩固自己的基础知识与操作方法,才能在遇到复杂问题时能及时找到解决的方法。 另外建立E-R图的相关知识和我们的生活联系比较紧密,学习起来也较有意思。

本文来源:https://www.bwwdw.com/article/pkhq.html

Top