从零开始搭建自己的网站三:数据库设计

数据库设计:

1、用户表

尽管用户只有一个,但是还是需要用户表来进行登录到后台进行文章的发布。

CREATE TABLE `user` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `username` varchar(20) DEFAULT NULL,

  `password` varchar(20) DEFAULT NULL,

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;

2、文章表

这里我文章表中没有放入文章的内容。因为我的文章是用ueditor来进行编辑,完成编辑后,字段内容长度会很大。而且考虑到很多情况点击量是在首页产生,首页的展示也是不需要展示内容。所以当需要查看特定的文章的时候单独查询内容表展示即可

CREATE TABLE `article` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `contentId` int(11) DEFAULT NULL COMMENT '内容ID',

  `title` varchar(255) DEFAULT NULL COMMENT '标题',

  `abstr` varchar(255) DEFAULT NULL COMMENT '描述',

  `categoryId` varchar(2) DEFAULT NULL COMMENT '类别',

  `categoryValue` varchar(20) DEFAULT NULL,

  `imgurl` varchar(70) DEFAULT NULL COMMENT '图片地址',

  `createDate` date DEFAULT NULL COMMENT '创建日期',

  `top` varchar(2) DEFAULT NULL COMMENT '1为热门文章',

  `key` varchar(20) DEFAULT NULL COMMENT '关键字',

  `keyValue` varchar(20) DEFAULT NULL,

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=43 DEFAULT CHARSET=utf8;

3、内容表

CREATE TABLE `content` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `content` longtext COMMENT '内容',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=56 DEFAULT CHARSET=utf8;

4、类别表

类别是主要分类,同一类别下的文章又会有不同的关键字。

CREATE TABLE `category` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `chiName` varchar(20) DEFAULT NULL COMMENT '类别名称',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=5 DEFAULT CHARSET=utf8;

5、关键字表

CREATE TABLE `keyword` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `value` varchar(20) DEFAULT NULL COMMENT '关键字',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;

6、点击量和评论量表

点击量是变化频率最高的一个字段。

CREATE TABLE `artcount` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `click` int(20) DEFAULT NULL COMMENT '点击量',

  `comment` int(20) DEFAULT NULL COMMENT '评论量',

  `articleId` int(11) DEFAULT NULL COMMENT '文章ID',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=10 DEFAULT CHARSET=utf8;

7、评论表

CREATE TABLE `comment` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `content` varchar(255) DEFAULT NULL COMMENT '评论内容',

  `articleId` varchar(11) DEFAULT NULL COMMENT '文章ID',

  `date` date DEFAULT NULL COMMENT '评论时间',

  `ip` varchar(20) DEFAULT NULL COMMENT '评论的IP地址',

  PRIMARY KEY (`id`)

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

8、其他表

这里什么广告表,友情链接表啊目前暂时就不考虑了。只设计了一张每日一句的语言表。

CREATE TABLE `good` (

  `id` int(11) NOT NULL AUTO_INCREMENT,

  `chiContent` varchar(100) DEFAULT NULL,

  `engContent` varchar(100) DEFAULT NULL,

  `date` date DEFAULT NULL,

  `author` varchar(10) DEFAULT NULL,

  PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8;

欢迎转载,转载请注明出处http://www.dingyinwu.com/article/43.html

如果文章中有任何问题或者可以改进的地方,请大家多提提意见,我会非常感激。

你可能感兴趣的:(从零开始搭建自己的网站三:数据库设计)