PHP开发简易贴吧之数据库搭建
数据库分析
本项目实现的主要功能为用户注册登录,发布帖子,回复帖子,据此判断,需要设计用户表和帖子内容表两张表
用户表user包含字段如下:
字段名 | 字段类型 | 字段长度 | 字段描述 |
| id | int | 30 | 编号、主键、自增长 |
| username | varchar | 30 | 用户名 |
| password | varchar | 40 | 密码 |
帖子表tiezi包含字段如下:
| 字段名 | 字段类型 | 字段长度 | 字段描述 |
| id | int | 30 | 编号、主键、自增长 |
| userId | int | 30 | user表的用户id |
| fId | int | 30 | 表示帖子的从属关系 |
| title | varchar | 50 | 帖子的标题 |
| content | text | 帖子的内容 | |
| timestamp | varchar | 30 | 帖子发布时间 |
| num | int | 20 | 帖子浏览量 |
数据库创建
我们在命令提示符窗口下运行 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 ;
