头条类网站的数据库设计

  设计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表主要是用户对帖子的评论相关信息。

实际场景:

 

猜你喜欢

转载自www.cnblogs.com/yulianggo/p/10479581.html