用mysql写图书管理系统
时间: 2023-07-18 20:39:19 浏览: 93
图书管理系统,react.js + koa.js + springboot + mysql,孩子不懂事,随便写着玩的.zip
好的,实现一个基本的图书管理系统需要设计数据库结构和编写相应的 SQL 语句。下面是一个简单的图书管理系统的数据库结构:
1. book 表
| 字段名 | 数据类型 | 描述 |
| ------ | -------- | ---- |
| id | int(11) | 图书编号,自增长 |
| name | varchar(50) | 图书名称 |
| author | varchar(50) | 作者 |
| publisher | varchar(50) | 出版社 |
| price | decimal(10,2) | 价格 |
| total | int(11) | 总数量 |
| remain | int(11) | 剩余数量 |
2. reader 表
| 字段名 | 数据类型 | 描述 |
| ------ | -------- | ---- |
| id | int(11) | 读者编号,自增长 |
| name | varchar(50) | 读者姓名 |
| gender | varchar(2) | 性别 |
| phone | varchar(20) | 联系电话 |
| email | varchar(50) | 邮箱 |
3. borrow 表
| 字段名 | 数据类型 | 描述 |
| ------ | -------- | ---- |
| id | int(11) | 借阅编号,自增长 |
| book_id | int(11) | 图书编号 |
| reader_id | int(11) | 读者编号 |
| borrow_date | datetime | 借阅日期 |
| return_date | datetime | 归还日期 |
在这个数据库结构中,book 表表示图书信息,reader 表表示读者信息,borrow 表表示借阅信息。
下面是一些常用的 SQL 语句:
1. 查询所有图书信息:
```sql
SELECT * FROM book;
```
2. 查询所有读者信息:
```sql
SELECT * FROM reader;
```
3. 查询某个读者借阅的图书:
```sql
SELECT book.*, borrow.borrow_date, borrow.return_date
FROM book
INNER JOIN borrow ON book.id = borrow.book_id
WHERE borrow.reader_id = [读者编号];
```
4. 查询某个图书的借阅情况:
```sql
SELECT reader.*, borrow.borrow_date, borrow.return_date
FROM reader
INNER JOIN borrow ON reader.id = borrow.reader_id
WHERE borrow.book_id = [图书编号];
```
5. 借出图书:
```sql
UPDATE book SET remain = remain - 1 WHERE id = [图书编号];
INSERT INTO borrow (book_id, reader_id, borrow_date) VALUES ([图书编号], [读者编号], NOW());
```
6. 归还图书:
```sql
UPDATE book SET remain = remain + 1 WHERE id = [图书编号];
UPDATE borrow SET return_date = NOW() WHERE book_id = [图书编号] AND reader_id = [读者编号] AND return_date IS NULL;
```
以上是一个简单的图书管理系统的数据库结构和相关 SQL 语句。实际的图书管理系统可能会更加复杂,需要根据实际需求进行设计和实现。
阅读全文