今天就来进行实体以及表结构的设计
文档写的不标准,一开始想先定义一下实体,最后写着写着写把表关系也给写上了
有什么不足希望大家多多指出
实体设计
用户实体
user
Long id; // id
String username; // 用户名
String password; // 密码
String phone; // 电话号码
String u_photo; // 头像
String slat; // 盐
分类
category
Long id;
String type_name;
String type_info;
String icon_url;
图书信息
book
Long id;
String title; // 书名
String intro; // 简介
Long a_id; // 作者id
String book_comment; // 书评
String image; // 封面
Date creatDate; // 起始更新时间
int chapter_number; // 章节数量
Date updateDate; // 最后更新时间
int state; // 状态 1:完结 0:未完结
String protagonist; // 主角
Long c_id; // 分类id
图书热度
book_hot
Long b_id; // 图书id
int click_num; // 点击量
int search_num; // 搜索量
int hot; // 热度
图书章节
chapter
Long id; // id
int sequence_num; // 章节序号
String title; // 章节名
String context; // 内容
Long b_id; // 图书id
作者信息
author
Long id;
String name; // 作者名
String introduce; // 简介
String a_photo; // 照片
评论
review
Long id;
Long b_id; // 图书id
String text; // 评论内容
Long u_id; // 用户id
TimeStremp date; // 评论时间
书架(用户—图书)
user_book
Long u_id; // 用户id
Long b_id; // 图书id
Long c_id; // 章节id
管理员
admin
Long id;
String admin_name; // 用户名
String password; // 密码
String slat; // 盐
数据库设计
用户实体(user)
分类(category)
图书信息(book)
图书热度(book_hot)
图书章节(chapters)
作者信息(author)
评论(review)
书架(用户—图书)(user_book)
管理员(admin)
附:
/*
Navicat Premium Data Transfer
Source Server : localhostMysql
Source Server Type : MySQL
Source Server Version : 80012
Source Host : localhost:3306
Source Schema : wedo
Target Server Type : MySQL
Target Server Version : 80012
File Encoding : 65001
Date: 09/10/2020 19:53:29
*/
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for admin
-- ----------------------------
DROP TABLE IF EXISTS `admin`;
CREATE TABLE `admin` (
`id` bigint(20) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT '管理员id',
`admin_name` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '管理员名',
`password` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '密码',
`slat` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '盐',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for author
-- ----------------------------
DROP TABLE IF EXISTS `author`;
CREATE TABLE `author` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`name` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '作者名',
`introduce` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '简介',
`a_photo` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '照片',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 145 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for book
-- ----------------------------
DROP TABLE IF EXISTS `book`;
CREATE TABLE `book` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`title` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '书名',
`intro` longtext CHARACTER SET utf8 COLLATE utf8_general_ci NULL COMMENT '简介',
`a_id` bigint(20) NULL DEFAULT NULL COMMENT '作者id',
`book_comment` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '书评',
`image` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '封面',
`creat_date` date NOT NULL COMMENT '起始更新时间',
`chapter_number` int(11) NOT NULL COMMENT '章节数量',
`update_date` date NOT NULL COMMENT '最后更新时间',
`state` tinyint(1) NOT NULL COMMENT '状态:1.完结;0.未完结',
`protagonist` varchar(30) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '主角',
`c_id` bigint(20) NULL DEFAULT NULL COMMENT '分类id',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 152 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for book_hot
-- ----------------------------
DROP TABLE IF EXISTS `book_hot`;
CREATE TABLE `book_hot` (
`b_id` bigint(20) NOT NULL COMMENT '图书id',
`click_num` int(11) NULL DEFAULT NULL COMMENT '点击量',
`search_num` int(11) NULL DEFAULT NULL COMMENT '搜索量',
`hot` int(11) NULL DEFAULT NULL COMMENT '热度',
PRIMARY KEY (`b_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for category
-- ----------------------------
DROP TABLE IF EXISTS `category`;
CREATE TABLE `category` (
`id` bigint(20) NOT NULL AUTO_INCREMENT,
`type_name` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '分类名',
`type_info` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '分类简介',
`icon_url` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '分类图标',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 20 CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for chapter
-- ----------------------------
DROP TABLE IF EXISTS `chapter`;
CREATE TABLE `chapter` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`sequence_num` int(11) NULL DEFAULT NULL COMMENT '章节序号',
`title` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL DEFAULT NULL COMMENT '章节名',
`context` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci NULL COMMENT '章节内容',
`b_id` bigint(20) NULL DEFAULT NULL COMMENT '图书id',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 11064 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for review
-- ----------------------------
DROP TABLE IF EXISTS `review`;
CREATE TABLE `review` (
`id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'id',
`b_id` bigint(20) NULL DEFAULT NULL COMMENT '图书id',
`text` varchar(500) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '评论内容',
`u_id` bigint(20) NULL DEFAULT NULL COMMENT '用户id',
`date` timestamp(0) NULL DEFAULT NULL ON UPDATE CURRENT_TIMESTAMP(0) COMMENT '评论时间',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for user
-- ----------------------------
DROP TABLE IF EXISTS `user`;
CREATE TABLE `user` (
`id` bigint(20) NOT NULL COMMENT '用户id',
`username` varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '用户名',
`password` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '密码',
`phone` varchar(11) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '手机号',
`u_photo` varchar(255) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '头像',
`slat` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '盐',
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Table structure for user_book
-- ----------------------------
DROP TABLE IF EXISTS `user_book`;
CREATE TABLE `user_book` (
`u_id` bigint(20) NOT NULL COMMENT '用户id',
`b_id` bigint(255) NOT NULL COMMENT '图书id',
`c_id` bigint(20) NULL DEFAULT NULL COMMENT '章节id',
PRIMARY KEY (`u_id`, `b_id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic;
SET FOREIGN_KEY_CHECKS = 1;
上一篇:唯读—需求分析
上一篇:唯读—图书微服务接口设计