如下代码供学习交流,获取完整代码,请关注文后二维码(coding加油站)回复“数据库图书”免费获取
1、项目简介
图书馆数据库,该项目同时提供pythonweb可视化展示界面,也可提供相关报告数据,可以用来作为数据库系统设计的期末作业
主要设计到如下几个功能:
1.1管理员方面
- 增、删、改、挂失图书信息和读者信息;
- 查看用户信息和图书信息。
- 登录管理员界面
- 为读者办理借书还书
1.2读者方面
- 登录读者界面
- 查询借书记录和个人信息
2、项目展示
如下是部分数据流图:
2.1:读者注册
2.2图书上架
2.3图书搜索
2.4图书借阅
2.5借书记录搜索
3、项目数据字典
| 数据项名 | 别名 | 数据类型 | 说明 |
| 读者编号 | reader_id | varchar(5) PK | 读者证的编号按顺序系统分配 |
| 姓名 | reader_name | varchar(20) | 读者姓名 |
| 性别 | sex | char(2) | 读者性别 |
| 出生日期 | birthday | date | 读者出生日期 |
| 电话 | phone | varchar(20) | 读者电话 |
| 手机 | mobile | varchar(20) | 读者手机 |
| 证件名称 | card_name | varchar(8) | 读者的证件可以是身份证学生证等 |
| 证件编号 | card_id | varchar(18) | 读者的证件号 |
| 会员级别 | level | varchar(6) | 有三个级别,普通银卡金卡 |
| 办证日期 | day | date | 即注册日期 |
| 读者登录密码 | Password(Readers表) | varchar(45) | 读者登录系统中时使用的密码 |
| 图书编号 | book_id | varchar(5) | 图书的编号系统分配 |
| 书名 | book_name | varchar(50) | 书的名字 |
| 作者 | author | varchar(20) | 书的作者 |
| 出版社 | publishing | varchar(20) | 书的出版社 |
| 类别编号 | category_id | varchar(5) | 书的类别编号 |
| 单价 | price | double | 书的价格 |
| 入库日期 | date_in | datetime | 入库的时间即图书上架时间 |
| 库存数量 | quantity_in | int | 上架的书的数量 |
| 借出数量 | quantity_out | int | 书借出去的数量 |
| 遗失数量 | quantity_loss | int | 书的丢失的数量 |
| 出借日期 | date_borrow | date | 书借出去的日期在借阅中生成 |
| 应还日期 | date_return | date | 根据会员的级别确定的日期 |
| 遗失 | loss | char(2) | 有“否”“是”区分书是否丢失了 |
| 类别名称 | category | varchar(20) | 类别的名字如“计算机” |
| 最长出借天数 | days | smallint | 根据会员级别相应天数 |
| 最多借书册书 | numbers | smallint | 根据会员级别能借最多的书 |
| 会费 | fee | smallint | 会员级别所要的费用(单位:元) |
| 管理员ID | User_ID | Varchar(20) | 管理员登录用ID |
| 管理员密码 | Password(admin表) | Varchar(20) | 管理员登录用密码 |
4、系统ER图
5、部分数据表设计
CREATE TABLE `admin` ( `userID` varchar(20) NOT NULL, `password` varchar(20) NOT NULL, PRIMARY KEY (`userID`,`password`), UNIQUE KEY `userID_UNIQUE` (`userID`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `book_category` ( `category_id` varchar(5) NOT NULL DEFAULT '', `category` varchar(20) DEFAULT NULL, PRIMARY KEY (`category_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8; CREATE TABLE `books` ( `book_id` varchar(5) NOT NULL, `book_name` varchar(50) NOT NULL, `author` varchar(20) DEFAULT NULL, `publishing` varchar(20) DEFAULT NULL, `category_id` varchar(5) DEFAULT NULL, `price` double DEFAULT NULL, `date_in` date DEFAULT NULL, `quantity_in` int(11) NOT NULL, `quantity_out` int(11) NOT NULL, `quantity_loss` int(11) NOT NULL, PRIMARY KEY (`book_id`), KEY `category_id` (`category_id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;
获取完整代码,请关注文后二维码(coding加油站)回复“数据库图书”免费获取



