1. 基本原则
- 统一性:全库采用一致的命名规范
- 简洁性:在表达清晰的前提下尽量简短
- 规范性:遵循数据库标准规范
- 可读性:命名即注释,见名知意
2. 命名规范详解
2.1 命名禁止项
禁止项 |
错误示例 |
正确示例 |
说明 |
数据库关键字 |
order, desc |
goods_order |
避免SQL冲突 |
中文拼音 |
yonghu, dingdan |
user, order |
统一用英文 |
特殊字符 |
user@info |
user_info |
只用字母数字下划线 |
大写字母 |
UserInfo |
user_info |
统一用小写 |
驼峰命名 |
userName |
user_name |
使用下划线分隔 |
2.2 命名规范
类型 |
命名规范 |
✅ 正确示例 |
❌ 错误示例 |
说明 |
数据库名 |
全小写字母+下划线 |
my_project_db |
MyProjectDB |
避免大写和驼峰 |
表名 |
全小写字母+下划线 |
user_info |
UserInfo |
使用下划线分隔 |
主键 |
id或表名_id |
id, user_id |
ID, userId |
统一命名风格 |
外键 |
关联表名_id |
order_id |
orderId |
与表名保持一致 |
普通字段 |
全小写字母+下划线 |
create_time |
createTime |
不用驼峰命名 |
布尔字段 |
is_开头 |
is_deleted |
deleted |
表明是布尔值 |
时间字段 |
_time结尾 |
create_time |
create_date |
统一使用time |
金额字段 |
_amount结尾 |
total_amount |
money |
明确表示金额 |
状态字段 |
_status结尾 |
order_status |
state |
统一使用status |
临时表 |
原表名_bak |
user_info_bak |
userInfo_temp |
统一后缀格式 |
备份表 |
原表名_YYYYMMDD |
user_info_20240321 |
user_info_bak_1 |
添加日期后缀 |
关联表 |
主表_从表 |
user_role |
userRole |
下划线连接 |
树结构表 |
原表名_tree |
menu_tree |
menuTree |
特殊表后缀 |
3. 通用字段规范
用途 |
推荐命名 |
字段类型 |
主键 |
id |
bigint |
创建时间 |
create_time |
datetime |
更新时间 |
update_time |
datetime |
创建人 |
create_by |
varchar |
更新人 |
update_by |
varchar |
是否删除 |
is_deleted |
tinyint |
版本号 |
version |
int |
备注 |
remark |
varchar |
4. 特殊表命名建议
- 表名用单数形式,如:user而不是users
- 关联表名用联合方式,如:user_role
- 树形结构表添加后缀,如:menu_tree
- 临时表添加后缀,如:user_info_bak
- 备份表添加日期,如:user_info_20240321
记住:数据库命名规范是项目规范的基础,从一开始就要重视。