鸣谢
本文有www.pusdn.com | PUSDN提供技术支持
数据库命名规范
数据库对象的命名要能做到见名识意,并且最后不要超过32个字符
所有数据库对象名称禁止使用mysql保留关键字(如果表名中包含关键字查询时,需要将其用单引号括起来)
禁止使用SELECT * 必须使用SELECT <字段列表> 查询
表命名
小写英文单词,多个下划线分割,推荐以biz_
开头易于区分,如:
biz_模块名_表
运营管理 - 轮播管理:biz_oper_carousel
学生管理 - 工作任务:biz_stu_task
表字段命名
以下字段均为必须字段,具体可以参考demo_tmpl_table,直接复制即可
dept_id、user_id可选
- 主键命名:必须为 id,采用雪花算法,无需设置自动递增
- 区分位: iz_* [String(1)] 1表示是 0表示否,(禁用 is_,代码生成实体有问题 )
- 状态位: *_status [varchar(1-2)] 状态字段必须加注释说明每个值代表含义
- 逻辑删除字段,del_flag [int(1)],1表示删除 0表示未删除
- 字符串类型字段,varchar类型长度不允许超过1000(过长转库会变类型)
- 大文本尽量少用,字段类型采用text、longtext,禁用blob系列类型(必须用要确认)
- 表字段注释,状态类型的字段必须说明取值规则(比如性别sex取值规则)比如:'性别 0男,1女'
- 索引,查询频率高的字段加索引(单字段索引 、组合索引、唯一索引);
- 所有存储相同数据的列名和列类型必须一致(一般作为关联列,如果查询时关联列类型不一致会自动进行数据类型隐式转换,会造成列上的索 引失效,导致查询效率降低)
- 禁止在数据库中存储图片,文件等大的二进制数据
- 禁止使用不含字段列表的INSERT语句
如:insert into values ('a','b','c');
应使用insert into t(c1,c2,c3) values ('a','b','c');