数据库分析
本项目实现的主要功能为用户注册登录,发布帖子,回复帖子,据此判断,需要设计用户表和帖子内容表两张表
用户表user包含字段如下:字段名字段类型字段长度字段描述
idint30编号、主键、自增长
usernamevarchar30用户名
passwordvarchar40密码
帖子表tiezi包含字段如下:字段名字段类型字段长度字段描述
idint30编号、主键、自增长
userIdint30user表的用户id
fIdint30表示帖子的从属关系
titlevarchar50帖子的标题
contenttext帖子的内容
timestampvarchar30帖子发布时间
numint20帖子浏览量
数据库创建
我们在命令提示符窗口下运行 mysql(具体怎么通过命令提示符窗口连接数据库,可以参考我们之前的课程《PHP开发登录注册教程》中的2.2小节)
连接数据库成功后,将下面创建数据库的完整语句复制进窗口中,按回车键即提示创建成功,如下图
创建数据库的完整语句如下DROP DATABASE IF EXISTS tieba;
CREATE DATABASE tieba DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
USE tieba;
CREATE TABLE IF NOT EXISTS `user` (
`id` int(30) NOT NULL AUTO_INCREMENT,
`username` varchar(30) NOT NULL,
`password` varchar(40) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=9 ;
INSERT INTO `user` (`username`, `password`) VALUES
('admin', '21232f297a57a5a743894a0e4a801fc3');
CREATE TABLE IF NOT EXISTS `tiezi` (
`id` int(30) NOT NULL AUTO_INCREMENT,
`userId` int(30) NOT NULL,
`fId` int(30) NOT NULL,
`title` varchar(50) NOT NULL,
`content` text NOT NULL,
`timestamp` varchar(30) NOT NULL,
`num` int(20) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=39 ;