# 图书管理系统
**Repository Path**: chongyang-zhang/library-management-system
## Basic Information
- **Project Name**: 图书管理系统
- **Description**: Python简单实现图书管理系统
使用SQLserver数据库
- **Primary Language**: Python
- **License**: MulanPSL-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 19
- **Forks**: 0
- **Created**: 2022-05-28
- **Last Updated**: 2024-12-17
## Categories & Tags
**Categories**: Uncategorized
**Tags**: Python, 图书管理系统
## README
###
Python简单实现图书管理系统
####一、需求分析:
1. 某单位图书馆要开发一个小型图书管理系统,主要实现图书管理、读者管理、借阅管理、信息查询、系统维护等功能。具体描述如下:
1) 图书管理:主要实现图书信息的添加、删除、更新、查询等功能。图书信息包括编号、书名、作者、出版社、出版日期、单价、简介、是否被借阅等。
2) 读者管理:主要实现读者信息的添加、删除、更新、查询等功能。读者信息包括编号、姓名、性别、单位、电话、类型、余额、密码等。类型分为四类:教师、研究生、本科生、其他。读者类型不同,可以借阅图书的册数和借阅时间也不一样,具体规定如下:教师在借图书最多15册,一次借阅时间不超过180天;研究生在借图书最多10册,一次借阅时间不超过180天;本科生在借图书最多5册,一次借阅时间不超过60天;其他人员在借图书最多5册,一次借阅时间不超过30天。类型信息也要有添加、删除、更新、查询等功能。
3) 借阅管理:主要实现图书的借阅、归还、超期扣款、读者充值等功能,包括借阅日期、还书日期、是否逾期、逾期金额、逾期是否处理等信息处理。
4) 信息查询:主要图书信息查询、读者个人信息查询、读者借阅信息查询等。
5) 系统维护:主要实现系统维护功能,主要包括管理员编号密码管理等。
2. 从用户的角度来看,本系统主要分为两类用户:
1) 管理员用户。负责对系统所有基本信息的管理,包括对图书信息和读者信息的添加、删除和修改,对读者借阅信息的及时更新,对整个系统数据库的维护等。
2) 读者用户。可以读者用户个人信息查询、图书信息查询、个人借阅信息查询、密码修改等。
####二、系统功能模块设计:
在系统需求分析的基础上,得到本系统的功能模块图如下图所示。
####三、根据需求分析和功能模块设计,完成下列要求:
1. 根据需求分析,明确实体和相互联系,并画出系统E-R图。(10分)
2. 将E-R图转换为对应的关系模式。(10分)
3. 系统初始化(40分)
1. 用户界面通过输入主机地址、端口号、账号、密码完成数据库连接。(2分)
2. 根据关系模式,建立关系数据库BOOKS_学号(数据文件位置:d:\BOOKS_学号\DB)。(2分)
3. 建立相应数据表,各表字段根据关系模式和需求进行定义,并选择合适数据类型,确定各表主键和必要外键。(16分)
4. 对数据表可以建立适当索引,提高查询速度。(4分)
5. 建立必要的存储过程,完成需要功能(数据处理前需要进行必要判断,例如添加、修改或删除数据之前该数据是否存在,借阅超时扣款之前检查读者金额是否满足扣款额度等)。(16分)
4. 用户界面建设(40分)
根据功能模块设计进行功能界面建设,完成相应交互处理。
#### 安装教程
1. 安装python环境
2. pip install pymssql
3. pip install prettytable