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

数据库设计:

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 

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

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值