文章摘要: MySQL数据库表设计方案。
命名规范
- 表名:使用名词,尽量简洁且具有描述性,例如
user,order。 - 字段名:使用名词或动名词,避免使用缩写,例如
user_id,order_status。
详细总结:基础知识-规范-通用代码命名规范
create创建、read读取、update更新、delete删除
| 字段 | 说明 |
|---|---|
| id | 主键,一个表必须要有主键 |
| create_time | 创建时间 |
| modifed_time | 修改时间 |
| version | 数据记录的版本号 |
| modifier | 修改人 |
| creator | 创建人 |
每个字段都要有注释,尤其涉及枚举时,需要详细说明枚举值。
命名规范:使用蛇形命名法,全部小写英文字母。
字段数据类型:选择合适的数据类型
字段存储长度
主键设计:UUID、自增组件、雪花算法生成的主键
优先考虑逻辑删除
- 通过为表添加一个
is_deleted字段,表示是否删除。
一个表中的字段不要太多
如果没有特殊理由,一般建议将字段定义为NOT NULL
NOT NULL可以放置出现空指针。NULL值存储需要额外的空间,运算更复杂。NULL值可能会导致索引失效。
存储引擎
选择合适统一的字符集:utf8、utf8mb4