|
|
@@ -16,14 +16,18 @@
|
|
|
- `update_by` bigint(20) DEFAULT NULL COMMENT '更新人'
|
|
|
|
|
|
### 表设计注意点:
|
|
|
-1. 表的主键id,类型统一为bigint(20),需指定主键 和 非空,不可设置自增;代码生成时默认id使用Mybatis-Plus自带雪花算法生成19为数字;
|
|
|
-2. 状态字段(只存在两种状态),字段类型为tinyint(1),Mybatis将此类型会自动转换为Boolean性,0为false,非0为true。字段命名避免使用status等Mysql等关键词,可用state等。
|
|
|
-3. 类型字段(存在两种以上),字段类型为tinyint(3),此类型取值范围0~127。
|
|
|
-4. 逻辑删除字段,原则上每张表都应该存在此字段,实际以需要为准。字段命名:is_deleted, 字段类型:tinyint(1)。
|
|
|
-5. 表设计指定字段类型, 按需最小原则。
|
|
|
-- 能用tinyint不用smallint,能用smallint不用int,能用int不用bigint.
|
|
|
-- 若已知的固定chang
|
|
|
-6. 表设计字段类型长度,按需设置、最小原则。如:varchar型,设置够用即可,非特殊情况,避免超过255。
|
|
|
+1. 业务表设计,存储引擎统一InnoDB、字符集统一:utf8mb4、核对:utf8mb4_general_ci。特殊情况可基于实际需求设定。
|
|
|
+2. 表的主键id,类型统一为bigint(20),需指定主键 和 非空,不可设置自增;代码生成时默认id使用Mybatis-Plus自带雪花算法生成19为数字;
|
|
|
+3. 状态字段(只存在两种状态),字段类型为tinyint(1),Mybatis将此类型会自动转换为Boolean性,0为false,非0为true。字段命名避免使用status等Mysql等关键词,可用state等。
|
|
|
+4. 类型字段(存在两种以上),字段类型为tinyint(3),此类型取值范围0~127。
|
|
|
+5. 逻辑删除字段,原则上每张表都应该存在此字段,实际以需要为准。字段命名:is_deleted, 字段类型:tinyint(1)。
|
|
|
+6. 表设计指定字段类型, 按需最小原则。
|
|
|
+- 能用tinyint不用smallint,能用smallint不用int,能用int不用bigint。
|
|
|
+- 针对字符型,若存储字段值为固定长度,则使用char并指定长度,如:sex、mobile等。
|
|
|
+7. 表设计字段类型长度,按需设置、最小原则。如:varchar型,原则上够用即可,考虑实际情况,可适当设置大一些,但长字符型或非特殊情况,避免超过255。
|
|
|
+8. 非特殊情况,避免使用text、mediumtext、mediumint、mediumblob、longtext、longblob。
|
|
|
+- 存储长字符型数据尽量用varchar,长度最好控制在2000及以内。 注意:utf-8型varchar最大长度21845。
|
|
|
+- 若业务需求必须使用text、mediumtext、mediumint、mediumblob、longtext、longblob等,列表数据查询不可查询该类型字段。
|
|
|
|
|
|
## 服务及数据库使用
|
|
|
1. 最大可能使用Mybatis-Plus生成方法,尽力减少使用自定义方法和自定义Sql,保证服务高可维护性和效率。
|