个人博客开发之数据库设计 3年前

前言

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

个人博客开发之数据库设计

关注公众号猿小叔获取更多干货分享

个人博客开发之数据库设计

image
nash8080
好多烦恼是你错觉以为你空有一身抱负的怀才不遇,其实更多真相是给你机会你却胸无点墨的后悔不已。
4
发布数
4
关注者
10738
累计阅读

热门教程文档

Kotlin
68小节
Djiango
17小节
MyBatis
19小节
Maven
5小节
MySQL
34小节