一、实验环境
1. 操作系统:Windows 10
2. 数据库管理软件(含版本号):PostgreSQL 13.12-1-windows-x64
3. 其他工具:无
- 实验内容及其完成情况
1.需求分析
系统应该实现以下功能:图书管理员可以维护图书信息,包括增加新书、修改图书信息、办理图书借阅登记、图书归还登记、过期图书处理、丢失图书处理及读者借阅证件信息的维护等;而读者可以实现借书、还书、查阅图书信息、查询借书信息等。
具体要求如下所示:
①图书信息管理:录人各种图书信息、维护图书信息等。图书信息具体包括图书编号、图书名称、图书类型、作者、出版社、价格等,其中图书类型将由图书分类号进行说明,每个图书分类号对应一种图书类型。
②读者信息管理:维护读者信息,并根据实际情况的需要修改、更新或删除读者信息。读者信息包括证件号、姓名、证件状态 (包括有效和失效)、联系方式等。
③借阅管理:包括借书、还书、过期图书归还处理等。借书时登记借阅时间,还书时登记归还时间,并检查借阅时间是否超期,以及进行相应的处理。
④图书管理系统主要有如下三种用户:
1)系统管理员:拥有系统的最高权限,可设置图书管理员等。
2)图书管理员:维护图书的基本数据,包括图书种类处理、更新图书信息,进行读者的图书借阅和归还处理等。
3)读者:可以查阅图书信息、借阅图书。
⑤图书馆的图书情况和管理规定如下: 每种图书类型都包括很多本不同的图书,同样的图书可以购买多本:每本图书可以被多次借阅;每位读者可以借阅多本图书;每本图书的借阅期限是一个月。
2.概念结构设计
①确定实体;
确定的实体有:图书类型、图书和读者。
②确定联系;
一名读者可以借阅多本图书,而一本图书也可以被不同的读者借阅,所以读者与图书之间存在着多对多的借阅关系,读者与图书之间存在着多对多的联系,即m:n的联系。每一种图书属于一种图书类型,而一种图书类型可以包含很多本图书,因此可以得到图书类型与图书之间也存在着一种一对多的联系,即图书类型与图书是1:n的联系。
③确定实体的属性和码(或称“键”)。
实体、联系的属性及主键具体如下:
1)图书类型,属性包括图书分类号、图书分类名称、描述信息,其中图书分类号是主键。
2)图书,属性包括图书编号、图书名称、图书分类号、作者、出版社、价格,其中图书编号是主键。
3)读者,属性包括证件号、姓名、证件状态(包括有效和失效)、联系方式等,其中证件号是主键。
4)针对读者与图书之间的“借阅”联系进行分析。这种联系是读者借阅图书产生的,是多对多的联系,其属性应该包括借阅日期、应还日期、归还日期及超期归还时的罚款金等。
⑴抽象出系统的实体
图书类型、图书信息和读者三个实体,如图1、图2和图3所示。
图1 图书类型实体及属性
图2 图书实体及属性
图3 读者实体及属性
⑵设计初步E-R图
图书借阅系统的初步E-R图,如图4所示。
图4 图书借阅系统初步E-R图
⑶设计全局E-R图
图书借阅系统全局E-R图,如图5所示。
图5 图书借阅系统全局E-R图