建表命名规范
1:库名、表名、字段名必须使用小写,并采用下划线(_)分割。
2:表名不使用复数名词
3:表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tinyint(1 表示是,0 表示否)。
说明:任何字段如果为非负数,必须是 unsigned。
注意:数据库表示是与否的值,使用 tinyint 类型,坚持 is_xxx 的命名方式是为了明确其取值含义与取值范围。
正例:表达逻辑删除的字段名 is_deleted,1 表示删除,0 表示未删除。
4:禁用保留字,如 desc、range、match、delayed 等,请参考 MySQL 官方保留字
5:主键索引名为 pk_字段名;唯一索引名为 uk_字段名;普通索引名则为 idx_字段名。
说明:pk_ 即 primary key;uk_ 即 unique key;idx_ 即 index 的简称。
6:varchar 是可变长字符串,不预先分配存储空间,长度不要超过 5000,如果存储长度大于此值,定义字段类型为text,独立出来一张表,用主键来对应,避免影响其它字段索引效率。
7:表必备五字段:xx_id, create_time, update_time,creator ,modifier。
说明:
xx_id 必为主键,类型为 char(32)。
create_time, update_time的类型均为 datetime 类型。
creator, modifier的类型均为 char(32) 类型。
8:表的命名最好是遵循“业务名称_表的作用”。
正例:alipay_task / force_project / trade_config
9:用int/bigint代替float/double/decimal,展示层做数据处理
eg,房屋面积(㎡),58.53㎡数据库存储5853,100㎡数据库存储10000,117.5㎡数据库存储11750
10:字段要设置默认值,varchar/char默认值'',数值型默认值0,