1、数据库表名称命名: xx_yyyy_zzz
xx代表业务系统名称缩写 (如:oa 。 oa_meeting )
yyyy代表系统中的业务名称 (如: oa_meeting OA系统,会议管理模块的业务)
zzz 代表业务模块的子模块的拓展 (如: oa_meeting_room OA系统,会议管理模块中的会议室管理子模块)
xx_yyyy_ppp_r 作为关系表的命名(如:oa_role_user_r OA系统,角色与用户的关系表)
2、数据库表字段命名: 两个要求
1、数据库字段名统一小写,英文字母中间用“_”分割 (如:oa_uuid , oa_create_time)
2、必须包含以下字段: ①id bigint类型 长度20 ②oa_uuid char类型 长度32。
可选包含以下字段(xx代表业务系统名缩写 如oa):①xx_create_time datetime类型②xx_update_time datetime类型③xx_status char类型 长度2
3、可供参考的建议:
1、所有的表外键主键字段的id 统一使用bigint类型 长度大于20。model使用Long类型。
2、所有的名称,如用户名称,角色名称等,建议长度63
3、标题,备注等,无特殊情况,建议使用127或255. 特殊的,可使用更长。 varchar(127)
4、所有的UUID字段,统一使用32位长度的字符串。char(32)
由于Mysql 5.7版本普遍使用的是InnoDB存储引擎 所以使用varchar替代char 是比较合适的。
如果使用的是MyISAM存储引擎, 则在定长的UUID字段等,使用char 替代varchar 则最为合适。