zoukankan      html  css  js  c++  java
  • 头条类网站的数据库设计

      设计4个表,分别时User,Message,News,Commen。其中的一些表可以有一些必要的冗余。

    News表

      头条网站中,news就包含网站中的每一个帖子,每个帖子都有相同点,提取相同点,抽象成字段。这个表是整个数据库中最重要的部分:

    DROP TABLE IF EXISTS `news`;
    CREATE TABLE `news`(
             #资讯自己的唯一id
        `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
             #资讯的标题
        `title` varchar(128) NOT NULL DEFAULT '',
             #资讯的链接
        `link` varchar(256) NOT NULL DEFAULT '',
             #资讯的首图
        `image` varchar(256) NOT NULL DEFAULT '',
             #资讯的点赞数
        `like_count` int NOT NULL,
             #评论数,冗余字段
        `comment_count` int NOT NULL,
             #创建时间
        `created_date` datetime NOT NULL,
             #资讯发布者的唯一id
        `user_id` int(11) NOT NULL,
        PRIMARY KEY(`id`)
    )    ENGINE=InnoDB DEFAULT CHARSET=utf8;

    如下:上述字段可以对应到网页的实体:

     User表

      user表示用户,表格信息如下:

    //若数据库中存在user表,则删除这个表
    DROP TABLE IF EXISTS `user`;
    //创建user表
    CREATE TABLE `user` (
        #用户所代表的唯一id `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
        #用户名 `name` varchar(64) NOT NULL DEFAULT ' ',
        #密码 `password` varchar(128) NOT NULL DEFAULT ' ', #salt是加强密码的额外的字段 `salt` varchar(32) NOT NULL DEFAULT ' ', #头像的url链接 `head_url` varchar(256) NOT NULL DEFAULT ' ', PRIMARY KEY (`id`), UNIQUE KEY `name` (`name`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8;

       如下形式是用户信息表:

     Massage表

      massage表包含系统的一些消息,用户之间的消息。

    实际场景如下:

    Comment表

      Comment表主要是用户对帖子的评论相关信息。

    实际场景:

     

  • 相关阅读:
    Vue中 el-table大数据量加载,不分页,节省内存的性能优化
    http请求中Content-Type以及qs.stringify的使用
    setTimeout用法(Event Loop简介、for循环中应用、vue中应用)
    Vue中关于图片路径配置的填坑日记
    WebSocket
    Vue中mockjs的使用
    Vue 作用域插槽slot slot-scope v-slot
    Windows Server 2003搭建邮件服务器
    Exchange 2010的部署
    Exchange 2010 详细安装步骤
  • 原文地址:https://www.cnblogs.com/yulianggo/p/10479581.html
Copyright © 2011-2022 走看看