驼峰命名(CamelCase)还是下划线命名(snake_case)
驼峰命名法
通过将单词的首字母大写(或仅首个单词后的单词首字母大写)来组合单词,不使用分隔符。例如,UserName 或 firstName。
根据首字母是否大写,分为:
-
UpperCamelCase(如 UserName,也叫 PascalCase):每个单词首字母大写。
-
lowerCamelCase(如 userName):首单词小写,其余单词首字母大写。
在数据库中,通常使用 UpperCamelCase 或 lowerCamelCase,但 PostgreSQL 中大小写敏感性会带来额外考虑。
特性
-
大小写敏感:
在 PostgreSQL 中,未加双引号的标识符(如 UserName)会被自动转换为小写(username)。因此,驼峰命名的列名通常需要用双引号定义和查询 -
与 ORM 集成:
驼峰命名与 Java、JavaScript 等语言的变量名一致,ORM 框架(如 Hibernate、Sequelize)通常默认映射到 camelCase,减少配置工作。 -
长度:
驼峰命名不使用分隔符,列名稍短(例如 UserName 比 user_name 少 1 个字符)。
下划线命名法
使用小写字母,并以 _ 作为单词之间的分隔符,例如 user_name 或 order_item_total_price。
通常全小写(snake_case),但在某些场景下可能使用大写(SNAKE_CASE,多见于常量或配置文件)。
特性
-
大小写无关:
PostgreSQL 对未加双引号的标识符小写化处理,因此 user_name、USER_NAME 和 User_Name 在查询中是等价的,无需双引号 -
与 SQL 风格一致:
下划线命名与 SQL 关键字(如 order_by、group_by)风格一致,查询语句更自然。 -
长度:
由于下划线分隔符,列名略长,但对现代数据库的性能影响微乎其微。

浙公网安备 33010602011771号