PostgreSQL naming conventions
我在哪里可以找到有关PostgreSQL命名约定的详细手册? (表名与驼峰案例,序列,主键,约束,索引等......)
关于表名,案例等,普遍的惯例是:
-
SQL关键字:
UPPER CASE -
名称(标识符):
lower_case_with_underscores
例如:
1 | UPDATE my_table SET name = 5; |
这不是一成不变的,但强烈建议IMO使用小写标识符。 Postgresql在没有引用的情况下对标识符不敏感地处理它(它实际上将它们在内部折叠为小写),并且在引用时区分大小写;很多人都没有意识到这种特质。使用小写字母是安全的。无论如何,使用
我不知道更多的会议或风格指南。代理键通常由序列(通常使用
另请参见此处的一些讨论,此处和(对于一般SQL),所有这些都有几个相关的链接。
没有真正的正式手册,因为没有单一的风格或标准。
只要您了解标识符命名规则,您就可以使用您喜欢的任何内容。
在实践中,我发现使用
如果你想为你的表和函数命名
要了解的主要内容是:
-
除非双引号,否则标识符大小写折叠为小写,因此
MyTable ,MyTable 和MyTable 都是相同的,但"MYTABLE" 和"MYTABLE" 是不同的; -
除非双引号:
SQL identifiers and key words must begin with a letter (a-z, but also letters with diacritical marks and non-Latin letters) or an underscore (_). Subsequent characters in an identifier or key word can be letters, underscores, digits (0-9), or dollar signs ($).
-
如果要将关键字用作标识符,则必须双引号。
在实践中,我强烈建议您不要使用关键字作为标识符。至少避免保留字。仅仅因为你可以命名一个表