数据库命名
表命名
- 大驼峰命名
- 不能有拼写错误
- 尽量接近业务逻辑 并根据实际的原理命名 比如orders
- 不能使用缩写(国际通用缩写除外)
- 使用复数形式
- 复数的规则参考词典比如 Staff而不是Staffs,ORM中应该声明别名
- 业务造词或合成词需将不同单词拼在一起
- 只有在关系表命名时可以出现下划线
- 下划线的数量等于关联表中外键数量减1
- 历史表的命名以__Versions结尾,此处为双下划线
例子
- Jobs
- JobLogs 合成词
- DataModels 业务造词
- CompanyJobs 业务造词
- CompanyJobLogs 业务造词+合成词
- DataModelFields 业务造词+合成词
- CompanyJobs_Users 关系表
- CompanyJobLogs_Users 关系表
- CompanyJobLogs_UserLogs 关系表
Jobs__Versions
Users
- Categories
- Organizations
- Orders
- Articles
- Cart
- Comments
数据库字段命名
- 小驼峰命名
- 不能有拼写错误
- 外键使用不能缩写 // userId (√) / uid(x)
- 外键使用资源单数小写+Id的形式 // userId (√) / usersId(x)
- 尽量接近业务逻辑并根据实际的原理命名,如status
例子
- id
- name
- title
- description
- status
- slat
- createdAt
- createdByUserId
- updatedAt
- replacedAt
- is/was{Xxx}, can/will{Xxx}, has{Xxx} // bool类型命名,前缀动词需要具有方向性。
- isLocked (√) / lockFlag(×)
- xxxStatus
- xxxId (使用orm建立关系表 应指定别名)