kenx

前言

分享完需求,我们就按照需求去设计数据库就可以了,这里我数据库选用
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 = \'评论 \';;

关注公众号猿小叔领取sql

分类:

技术点:

相关文章: