1、ER实体关系图与数据库模型图绘制
ER实体关系图
数据库模型图
Navicat数据库的ER图
2、DDL与DML语句
DDL
用户表 (Users)
图书表 (Books)
图书类别表 (BookCategories)
图书与类别关联表 (BookCategoryRelations)
借阅记录表 (BorrowRecords)
供应商表 (Suppliers)
采购记录表 (PurchaseRecords)
CREATE TABLE `users` (
`user_id` int(11) NOT NULL AUTO_INCREMENT,
`username` varchar(50) NOT NULL,
`password` varchar(255) NOT NULL,
`email` varchar(100) DEFAULT NULL,
`phone` varchar(20) DEFAULT NULL,
`created_at` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
PRIMARY KEY (`user_id`),
UNIQUE KEY `username` (`username`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `books` (
`book_id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(255) NOT NULL,
`author` varchar(100) NOT NULL,
`publisher` varchar(100) DEFAULT NULL,
`publication_year` year(4) DEFAULT NULL,
`ISBN` varchar(13) DEFAULT NULL,
`stock_quantity` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`book_id`),
UNIQUE KEY `ISBN` (`ISBN`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `bookcategories` (
`category_id` int(11) NOT NULL AUTO_INCREMENT,
`category_name` varchar(100) NOT NULL,
PRIMARY KEY (`category_id`),
UNIQUE KEY `category_name` (`category_name`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `bookcategoryrelations` (
`relation_id` int(11) NOT NULL AUTO_INCREMENT,
`book_id` int(11) DEFAULT NULL,
`category_id` int(11) DEFAULT NULL,
PRIMARY KEY (`relation_id`),
UNIQUE KEY `book_id` (`book_id`,`category_id`),
UNIQUE KEY `category_id` (`category_id`),
CONSTRAINT `bookcategoryrelations_ibfk_1` FOREIGN KEY (`book_id`) REFERENCES `books` (`book_id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `bookcategoryrelations_ibfk_2` FOREIGN KEY (`category_id`) REFERENCES `bookcategories` (`category_id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
CREATE TABLE `borrowrecords` (
`record_id` int(11) NOT NULL AUTO_INCREMENT,
`user_id` int(11) DEFAULT NULL,
`book_id` int(11) DEFAULT NULL,
`borrow_date` date NOT NULL,
`return_date` date DEFAULT NULL,
PRIMARY KEY (`record_id`),
KEY `user_id` (`user_id`),
KEY `book_id` (`book_id`),
CONSTRAINT `borrowrecords_ibfk_1` FOREIGN KEY (`user_id`) REFERENCES `users` (`user_id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `borrowrecords_ibfk_2` FOREIGN KEY (`book_id`) REFERENCES `books` (`book_id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB DEFAULT CHARSET=utf8;


4万+

被折叠的 条评论
为什么被折叠?



