前言
分享完需求,我们就按照需求去设计数据库就可以了,这里我数据库选用 Mysql 原因呢Mysql相对于其他数据库如ORACLE等轻巧,方便,开源,免费,好用,而且效率也够用
数据库设计
这里数据库设计我推荐大家一款数据库设计工具,我一直在使用觉得还不错叫PDMan
多平台版本,Mac Windows,Linux 系统都有 。总之功能非常强大 ,PDMan官网
分表设计
用户表
CREATE TABLE users(
user_Id BIGINT NOT NULL AUTO_INCREMENT COMMENT 用户ID ,
user_name VARCHAR(128) COMMENT 用户名 ,
user_nickname VARCHAR(128) COMMENT 用户昵称 ,
pwd VARCHAR(64) COMMENT 用户密码 ,
email VARCHAR(64) COMMENT 用户邮箱 ,
avatar VARCHAR(128) COMMENT 用户头像 ,
create_time DATETIME COMMENT 注册时间 ,
birthday DATE COMMENT 用户生日 ,
age INT COMMENT 用户年龄 ,
moble_phone VARCHAR(32) COMMENT 用户手机号 ,
PRIMARY KEY (user_Id)
) COMMENT = 用户 ;;
文章表
CREATE TABLE article(
article_id BIGINT NOT NULL AUTO_INCREMENT COMMENT 博文ID ,
push_data DATETIME COMMENT 发布日期 ,
article_user VARCHAR(32) COMMENT 发表用户 ,
title VARCHAR(1024) COMMENT 博文标题 ,
like_count INT COMMENT 点赞数 ,
comment_count INT COMMENT 评论数 ,
read_count INT COMMENT 浏览量 ,
top_flag VARCHAR(1) COMMENT 是否置顶 ,
create_time DATETIME COMMENT 创建时间 ,
article_summary VARCHAR(1024) COMMENT 文章摘要 ,
PRIMARY KEY (article_id)
) COMMENT = 文章 ;;
文章详情
CREATE TABLE article_detail(
article_detail_id BIGINT NOT NULL AUTO_INCREMENT COMMENT 文章详情id ,
content_md TEXT COMMENT 文章markdown内容 ,
content_html TEXT COMMENT 文章html内容 ,
article_id BIGINT COMMENT 文章id ,
PRIMARY KEY (article_detail_id)
) COMMENT = 文章详情 ;;
文章标签
CREATE TABLE article_tag_referenced(
atr_Id BIGINT NOT NULL AUTO_INCREMENT COMMENT 引用id ,
article_id BIGINT COMMENT 文章id ,
tag_id BIGINT COMMENT 标签id ,
PRIMARY KEY (atr_Id)
) COMMENT = 文章标签 ;;
文章分类
CREATE TABLE article_category_referenced(
acr_id BIGINT NOT NULL AUTO_INCREMENT COMMENT 引用id ,
article_id BIGINT COMMENT 文章id ,
category_id BIGINT COMMENT 类目id ,
PRIMARY KEY (acr_id)
) COMMENT = 文章分类 ;;
分类表
CREATE TABLE category(
category_id BIGINT NOT NULL AUTO_INCREMENT COMMENT 分类ID ,
category_name VARCHAR(64) COMMENT 分类名称 ,
alias_name VARCHAR(64) COMMENT 分类别名 ,
description VARCHAR(128) COMMENT 分类描述 ,
parennt_id BIGINT COMMENT 父分类ID ,
create_time DATETIME COMMENT 创建时间 ,
PRIMARY KEY (category_id)
) COMMENT = 分类 ;;
标签表
CREATE TABLE tag(
tag_id BIGINT NOT NULL AUTO_INCREMENT COMMENT 标签ID ,
tag_name VARCHAR(64) COMMENT 标签名称 ,
alias_name VARCHAR(64) COMMENT 标签别名 ,
description VARCHAR(128) COMMENT 标签描述 ,
create_time DATETIME COMMENT 创建时间 ,
PRIMARY KEY (tag_id)
) COMMENT = 标签 ;;
评论表
CREATE TABLE discuss(
discuss_id BIGINT NOT NULL AUTO_INCREMENT COMMENT 评论ID ,
create_time DATETIME COMMENT 评论日期 ,
like_count INT COMMENT 点赞数 ,
discuss_user BIGINT COMMENT 发表用户 ,
article_id BIGINT COMMENT 评论文章ID ,
content VARCHAR(3072) COMMENT 评论内容 ,
parent_id BIGINT COMMENT 父评论ID ,
PRIMARY KEY (discuss_id)
) COMMENT = 评论 ;;
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END