1、mysql 规范
1.1 表名规范
- 模块_+功能点 示例:alllive_log alllive_category。
- 采用26个英文字母(区分大小写)和0-9的自然数(经常不需要)加上下划线'_'组成,命名简洁明确,多个单词用下划线'_'分隔,一个项目一个数据库。
- 全部小写命名,禁止出现大写,专有名词也要小写。
- 数据库创建 字符集:utf8mb4、排序规则:utf8mb4_general_ci。
- 表必须填写描述信息,字段有注释。
- 用单数形式表示名称,例如,使用 employee,而不是 employees。
1.2 字段规范
- 采用26个英文字母(区分大小写)和0-9的自然数(经常不需要)加上下划线'_'组成,命名简洁明确,多个单词用下划线'_'分隔。
- 全部小写命名,禁止出现大写。
- 系统中所有逻辑型中数值0表示为“假”,数值1表示为“真”,datetime、smalldatetime类型的字段没有默认值,必须为NULL。
- 表中字段是另外一张表的主键,则为表名+id ,体现关联关系 示例:user_id
- 禁止使用外键。
1.3、表设计
- 表必须定义主键,默认为ID,整型自增。
- 多表中的相同列,必须保证列定义一致。
- 强烈建议不使用外键, 数据的完整性靠程序来保证。
1.4 索引命名规则
- 单个索引中的字段数不超过5个。
- 索引名必须全部使用小写。
- 非唯一索引按照“idx_字段名称[_字段名称]”进用行命名。例如idx_age_name。
- 唯一索引按照“uniq_字段名称[_字段名称]”进用行命名。例如uniq_age_name。
- 组合索引建议包含所有字段名,过长的字段名可以采用缩写形式。例如idx_age_name_add。
- 不在低基数列上建立索引,例如“性别”。
- 合理创建联合索引,(a,b,c) 相当于 (a) 、(a,b) 、(a,b,c)。
2、mongo 规范
2.1 库名规范
- 使用数字字母下划线,长度最多64个字符,推荐使用业务标识命名。
- 不能和系统库重合(admin,local,test,config)。
- 大小写敏感,推荐全部小写。
- 禁止使用数字开头的库名。
- 不要使用无意义的单词或者人名相关,比如mongo,chongxin_db。
2.2 集合规范
- 使用数字字母下划线,长度最多64个字符,推荐使用业务标识命名。
- 集合名称禁止以system.开头。
- 大小写敏感,推荐全部小写。
- 禁止使用_id,比如向_id中写入自定义内容。
- 禁止使用任何 " _ "(下划线) 以外的特殊字符。
- 集合名称最多为 64字符。
3、Redis规范
3.1 key 设计规范
- 命名规范为:业务模块名:业务逻辑含义:其它: value 类型。
- key 命名必须全部小写字母、数字和英文半角冒号(:)组成,必须以英文字母开头。