美文网首页
PHP开发规范——数据库规范篇(一):MySQL数据库

PHP开发规范——数据库规范篇(一):MySQL数据库

作者: 从入门到颈椎病 | 来源:发表于2018-06-28 23:16 被阅读139次

    一、建表规约

    1.数据库表名

    • 表名由英文字母、下划线 _ 和数字组成,但不建议使用数字
    • 表名以英文字母开头,以下划线 _ 连接
    • 表名全部使用小写字母
    • 表名不使用复数形式,仅仅表示实体内容即可
    • 表名可以根据需要添加表前缀,表前缀与实际表名以下划线 _ 相连
    • 禁用保留字和关键词命名

    2.字段名

    • 表达是与否概念的字段使用 is_ 前缀
    • 字段名由英文字母、下划线 _ 和数字组成,但不建议使用数字
    • 字段名以英文字母开头,以下划线 _ 连接
    • 字段名全部使用小写字母
    • 禁用保留字和关键词命名

    3.索引名

    • 唯一索引名使用 uk_ 前缀,普通索引使用 idx_ 前缀

    4.其他规约

    • 使用合适的存储长度以提升存储空间,提高检索速度
    • 不同表之间的字段可以存在冗余,但是要保证数据更新和修改的同步(冗余字段不能是频繁修改的字段)
    • 设计表时应该对字段进行注释说明字段含义
    • 设计表时要存在三个必备字段: idcreated_atupdated_at
    • 设计表时小数类型使用 decimal ,禁止使用 floatdouble
    • 如果设计表时字段值的长度可以预见在一定范围之内,请使用 char 类型
    • 设计表时业务逻辑上具有唯一特性的字段必须建成唯一索引

    二、SQL规约

    • 判断值是否为 NULL 的方法为: ISNULL()NULL 与任何值做任何比较都是 NULL
    • SUM() 函数的使用要注意 NPENullPointerException):当 SUM() 的该列值全部为 NULL
    • COUNT() 的那一列值全为 NULL 时所得的结果为 0(使用 COUNT(*) 而不是 COUNT() 某一列来统计记录数目)
    • 查询时不要使用 SELECT(*) 来查询结果,只查出需要的字段即可
    • 不要过多使用 in 操作,避免 in 的目标集合数目过多,一般控制在 1000 以内
    • 编码如果没有特殊要求请全部使用 UTF-8

    由于本人学艺不精,未尽之处还望海涵,有误之处请多多指正,欢迎大家批评指教

    本文 完

    相关文章

      网友评论

          本文标题:PHP开发规范——数据库规范篇(一):MySQL数据库

          本文链接:https://www.haomeiwen.com/subject/zzevyftx.html