如何用sql实现图书管理系统
时间: 2023-12-13 08:04:18 浏览: 49
要实现图书管理系统,需要设计数据库并编写相关的 SQL 语句。以下是一个简单的图书管理系统的数据库设计:
- 书籍表(book):存储书籍信息,包括书籍编号、书名、作者、出版社、出版日期、ISBN 码、分类、价格等字段。
- 借阅人表(borrower):存储借阅人信息,包括借阅人编号、姓名、性别、手机号等字段。
- 借阅记录表(borrow):存储借阅记录信息,包括借阅编号、书籍编号、借阅人编号、借阅日期、归还日期等字段。
根据上述数据库设计,可以编写以下 SQL 语句:
1. 创建数据库和表
```sql
CREATE DATABASE library;
USE library;
CREATE TABLE book (
book_id INT PRIMARY KEY,
title VARCHAR(50),
author VARCHAR(50),
publisher VARCHAR(50),
pub_date DATE,
isbn VARCHAR(20),
category VARCHAR(20),
price FLOAT
);
CREATE TABLE borrower (
borrower_id INT PRIMARY KEY,
name VARCHAR(20),
gender CHAR(1),
phone VARCHAR(20)
);
CREATE TABLE borrow (
borrow_id INT PRIMARY KEY,
book_id INT,
borrower_id INT,
borrow_date DATE,
return_date DATE,
FOREIGN KEY (book_id) REFERENCES book(book_id),
FOREIGN KEY (borrower_id) REFERENCES borrower(borrower_id)
);
```
2. 插入数据
```sql
INSERT INTO book VALUES (1, 'Java编程思想', 'Bruce Eckel', '机械工业出版社', '2007-06-01', '9787111213826', '计算机', 89.00);
INSERT INTO book VALUES (2, '深入浅出MySQL', 'Bill Karwin', '人民邮电出版社', '2012-01-01', '9787115275796', '计算机', 69.00);
INSERT INTO book VALUES (3, 'Python编程快速上手', 'Eric Matthes', '人民邮电出版社', '2017-06-01', '9787115428028', '计算机', 59.00);
INSERT INTO borrower VALUES (1, '张三', '男', '13800138000');
INSERT INTO borrower VALUES (2, '李四', '女', '13900139000');
INSERT INTO borrower VALUES (3, '王五', '男', '13600136000');
INSERT INTO borrow VALUES (1, 1, 1, '2021-01-01', '2021-01-15');
INSERT INTO borrow VALUES (2, 2, 2, '2021-02-01', '2021-02-15');
INSERT INTO borrow VALUES (3, 3, 3, '2021-03-01', NULL);
```
3. 查询图书信息
```sql
SELECT * FROM book;
```
4. 查询借阅人信息
```sql
SELECT * FROM borrower;
```
5. 查询借阅记录信息
```sql
SELECT borrow.borrow_id, book.title, borrower.name, borrow.borrow_date, borrow.return_date
FROM borrow
INNER JOIN book ON borrow.book_id = book.book_id
INNER JOIN borrower ON borrow.borrower_id = borrower.borrower_id;
```
6. 借阅图书
```sql
INSERT INTO borrow (book_id, borrower_id, borrow_date)
VALUES (1, 1, '2021-04-01');
```
7. 归还图书
```sql
UPDATE borrow SET return_date = '2021-04-15'
WHERE borrow_id = 1;
```
以上是一个简单的图书管理系统的数据库设计和 SQL 语句示例,具体的实现方式和细节还需要根据实际情况进行调整。