mysql开发规范

1. 库名、表名、字段名

        必须使用小写字母,并采用下划线分割,

        禁止超过32个字符,

        禁止使用MySQL保留字,

        表字符集使用UTF8,

        要和业务相关有统一前缀,

        要有注释。

         

 

 

2. 使用INNODB存储引擎。

 

 

3.  所有字段均定义为NOT NULL,  必须定义默认值: 0 或 空字符串。

 

4. create_time 字段 尽量使用  TIMESTAMP,

 

5. 禁止在数据库中存储明文密码,必须MD5或其他不可逆方式加密

 

6. 每个表必须有主键。

 

7. 不在低基数列上建立索引,例如“性别”。

 

8. 用IN代替OR。SQL语句中IN包含的值不应过多,应少于1000个。 

 

9. 减少与数据库交互次数,尽量采用批量SQL语句 (脚本批量执行有效提高性能)。

    INSERT ... ON DUPLICATE KEY UPDATE

    REPLACE INTO

    INSERT IGNORE INTO

 

    INSERT INTO VALUES(),(),()

    UPDATE CASE

 

10. 拆分复杂SQL为多个简单小SQL,避免大事务

 

11. 如无特殊情况,避免使用存储过程、触发器、视图、自定义函数等。

 

12. 禁止有super权限的账号在开发中使用。

 

13. 提交线上建表改表需求,必须详细注明涉及到的所有SQL语句(包括INSERT、DELETE、UPDATE),便于DBA进行审核和优化。

 

14. 无特殊情况,禁止在循环中执行sql

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值