Java基础 | 数据库的命名规范

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

记住:数据库命名规范是项目规范的基础,从一开始就要重视。