PostgreSQL命名约定

在哪里可以找到有关PostgreSQL命名约定的详细手册?(表名与camel大小写、序列、主键、约束、索引等)

关于表名、大小写等,普遍的惯例是:

  • SQL关键字:大写
  • 标识符(数据库、表、列等的名称):带下划线的小写字母

例如:

更新我的表格集合名称=5;

这不是一成不变的,但我强烈建议使用小写的标识符。Postgresql在不引用标识符时不区分大小写(它实际上在内部将其折叠为小写),在引用时区分大小写;许多人没有意识到这种特质。始终使用小写字母是安全的。无论如何,可以使用camelCasePascalCase(或UPPER\u CASE),只要您保持一致:要么总是引用标识符,要么从不引用标识符(这包括模式创建!)

我不知道还有更多的惯例或风格指南。代理键通常由一个序列(通常使用serial宏)生成,如果手动创建这些序列(tablename\u colname\u seq),则可以很方便地坚持这些序列的命名

请参阅这里的一些讨论,这里和(对于通用SQL)这里,都有几个相关链接

注意:Postgresql 10引入了identity列,作为与SQL兼容的串行的替代品

发表评论