数据库设计(个人博客)

数据库设计(个人博客)

在这里插入图片描述

一、表结构

  • 用户表:记录用户信息
数据项变量名类型
编号idBIGINT
用户名usernameVARCHAR
密码passwordVARCHAR
个性名称nicknameVARCHAR
头像链接avatarVARCHAR
  • 类型表:记录文章类型的信息
数据项变量名类型
编号idBIGINT
类型编号statusIdBIGINT
名称nameVARCHAR
详情detailVARCHAR
  • 文章表:记录文章的信息
数据项变量名类型
编号idBIGINT
作者编号user_idBIGINT
文章背景cover_imageVARCHAR
类型编号category_idINT
是否推荐statusTINYINT
标题titleVARCHAR
内容contentTEXT
浏览量view_countBIGINT
创建日期created_atDATETIME
更新日期updated_atDATETIME
  • 评论表:记录评论的信息
数据项变量名类型
编号idBIGINT
用户编号user_idBIGINT
文章编号article_idBIGINT
内容contentVARCHAR
创建日期created_atDATETIME

二、Sql语句

CREATE TABLE user (
  id BIGINT PRIMARY KEY AUTO_INCREMENT,
  username VARCHAR(255) UNIQUE NOT NULL,
  password VARCHAR(64) NOT NULL,
  nickname VARCHAR(255) NOT NULL,
  avatar VARCHAR(255) NOT NULL
);

CREATE TABLE category (
  id BIGINT PRIMARY KEY AUTO_INCREMENT,
  statusId BIGINT NOT NULL,
  name VARCHAR(20) UNIQUE NOT NULL,
  detail VARCHAR(255) 
);

CREATE TABLE article (
  id BIGINT PRIMARY KEY AUTO_INCREMENT,
  user_id BIGINT NOT NULL,
  cover_image VARCHAR(255) NOT NULL,
  category_id INT NOT NULL,
  status TINYINT NOT NULL DEFAULT 0,
  title VARCHAR(200) NOT NULL,
  content TEXT NOT NULL,
  view_count BIGINT NOT NULL DEFAULT 0,
  created_at DATETIME NOT NULL,
  updated_at DATETIME NOT NULL
);

CREATE TABLE comment (
  id BIGINT PRIMARY KEY AUTO_INCREMENT,
  user_id BIGINT NOT NULL,
  article_id BIGINT NOT NULL,
  content VARCHAR(400) NOT NULL,
  created_at DATETIME NOT NULL
);

三、编写pojo类

public class Article {
    private Long id;

    private Long userId;

    private String coverImage;

    private int categoryId;

    private byte status;

    private String title;

    private String content;

    private Long viewCount;

    private Date createdAt;

    private Date updatedAt;

    private User author; // 文章作者

    private Integer commentCount; // 文章评论数

    private List<Comment> commentList;
}
public class Category {
    private Long id;

    private int statusId;

    private String name;

    private String detail;

    private Long articleCount;

}
public class Comment {
    private Long id;

    private Long userId;

    private Long articleId;

    private String content;

    private Date createdAt;

    private User user;
}
public class User {

    private Long id;

    private String username;

    private String password;

    private String nickname;

    private String avatar;

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值