资源描述
数据库报告(图书馆信息管理系统)
———————————————————————————————— 作者:
———————————————————————————————— 日期:
2
个人收集整理 勿做商业用途
数据库实验报告
-—图书馆信息管理系统
班级:
姓名:
学号:
一. 需求分析:
分析系统需求后可绘出图书馆信息管理系统的数据流图:
二. 数据字典:
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图的相关知识和我们的生活联系比较紧密,学习起来也较有意思。
展开阅读全文