MySQL设计规范

本文总结一些MySQL的命名规范、建表、索引以及SQL的规范


MySQL命名规范

1、库名、表名、字段名必须使用小写字母,“_”分割
2、库名、表名、字段名必须不超过12个字符
3、库名、表名、字段名见名知意,建议使用名词而不是动词
4、非唯一索引必须按照“idx_字段名称_字段名称[_字段名]”进行命名
5、唯一索引必须按照“uniq_字段名称_字段名称[_字段名]”进行命名
建表规范
1、建议使用utf8mb4字符编码
2、统一使用innodb存储引擎
3、表名尽量使用小写,同一业务模块下建议使用统一的前缀
4、表必须有一个无关业务的自增字段作为主键,建议使用bigint类型
5、表必须有gmt_create、gmt_modified 两个字段为记录的写入时间和更改时间,便于数据查询和更改,建议字段类型我datetime类型
6、 字段长度满足需求前提下,尽可能选择长度小的,能使用整型就尽量不适用字符类型,金额或者利率等建议使用decimal或者int类型 ,字段属性尽可能加上NOT NULL约束
7、尽可能不使用TEXT/BLOB类型,影响性能
8、每个字段尽量都有注释

索引规范
1、建议尽量都使用小写命名,命名规则使用前缀idx_+字段名,如果有多个列,适当使用缩写
2、建议多使用复合索引来代替单列索引
3、对于varchar(n)  n比较大时,建议使用前缀索引
4、建议定期使用pt-duplicate-key-checker检查并删除重复索引

SQL规范
1、建议不要使用select * 查询,只选取所需列,可避免随机io
2、建议使用 join代替子查询
3、建议使用join查询时,关联字段必须一致,避免隐性转换,切都要有索引
4、order by 字段必须使用驱动表字段,否则可能无法使用索引,导致查询比较慢



来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29987453/viewspace-2149395/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/29987453/viewspace-2149395/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值