Type something to search...
数据库定义与命名规范

数据库定义与命名规范

  1. 【强制】 表名,字段名必须使用小写字母或数字,禁止出现数字开头,禁止两个下划线中间只出现数字.数据库字段命名修改的代价很大,字段名称需要慎重考虑.

    • 说明: MySQL在Windows下不区分大小写,但在Linux下区分大小写,因此数据库名\表名\字段名都不允许出现任何大写字.
    • 正例: aliyun_admin,rdc_config,level3_name,
    • 反例: AliyunAdmin,RDCConfig,level_3_name
  2. 【强制】 表达是与否概念的字段,必须使用is_XXX的命名方式,数据类型是tinyint ( 1 表示是, 0 表示否),其他数据类型不使用is_XXX的命名方式.

    • 正例: 表达逻辑删除的字段名is_deleted , 1表示删除,0表示未删除.
  3. 【强制】 表名不使用复数形式,与实体的概念对应.

  4. 【强制】 禁用保留字,如desc,range,match,delayed等.

  5. 【强制】 逐渐索引名为 pk_字段名;唯一索引名为uk_字段名;普通索引名为idx_字段名.

  6. 【强制】 小数类型为decimal,禁止使用floatdouble.

    • 说明: floatdouble在存储的时候,会丢失精度,在计算时,也会丢失精度.
  7. 【强制】 varchar是可变长字符串,不预先分配存储空间,长度不要超过5000,如果长度超出则使用text

  8. 【强制】 表必备的三个字段: id, gmt_create, gmt_modified.

    • 说明: 其中id必须为主键,类型为bigint, gmt_create和gmt_modified为datetime类型
  9. 【推荐】 表的命名最好是 “业务名称_表的作用”,如:alipay_task,trade_config

  10. 【推荐】 库名与应用名尽量一致