如何设计数据库总结
一、表关系
表与表之间的关系
例如下图:假设用户下单需要哪些表?
二、表结构
每张表设计什么字段,要用什么类型
例如:建立个user表
CREATE TABLE `t_user`(
`id` int(11) NOT NULL AUTO_INCREMENT COMMENT '用户表id',
`username` varchar(50) NOT NULL COMMENT '用户名',
`password` varchar(50) NOT NULL COMMENT '用户密码,MD5加密',
`email` VARCHAR(50) DEFAULT NULL,
`phone` VARCHAR(50) DEFAULT NULL,
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_time` datetime NOT NULL COMMENT '最后一次更新时间',
PRIMARY KEY (`id`),
UNIQUE KEY `user_name-unique` (`username`) USING BTREE
)ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
三、唯一索引
唯一索引unique ,保证数据的唯一性,避免数据重复
UNIQUE KEY
UNIQUE KEY `user_name-unique` (`username`) USING BTREE
四、单索引及组合索引
KEY :
KEY `order_no_index` (`order_no`) USING BTREE,
KEY `order_no_user_id——index` (`user_id`,`order_no`) USING BTREE
五、时间戳
查业务问题:
create_time:创建时间
update_time:更新时间
`create_time` datetime NOT NULL COMMENT '创建时间',
`update_time` datetime NOT NULL COMMENT '最后一次更新时间',