mysql数据库表设计和优化

一 mysql数据库表设计原则


1,数据库命名原则:英文字母,多个单词间用下划线'_',单词尽量简洁、见名知意
2,数据库表命名原则:英文字母,多个单词间用下划线'_',单词尽量简洁、见名知意

3,数据库表字段类型:尽量用int型,固定长度用char,使用varchar的范围尽量贴合实际,能用tinyint就不要用int和smallint,最好给字段设置默认值,默认值不为null;

4,数据库表字段索引:主键必须设置索引,例如user_name字段,索引名为user_name_index,索引不必设置太多

5,数据库范式

第一范式:字段值具有原子性,即字段值不可分割

第二范式:一个表必须有主键,即一行数据可以独立区别

第三范式:一个表中不能包含关联表中其他非关键字的信息,即不要有冗余

二 sql优化


1,务必不要使用select * ,尽量使用limit,我们要优化的目的就是尽量不去做全表扫描

2,频繁查询的where子语句的条件加上索引

3,where 子语句的连接不要使用or,这样会使引擎放弃索引,直接全表扫描

4,sql语句不要做太多关联,最好简单分开


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值