我打算为一系列数据库名称使用前缀,并且需要确保我没有遇到长度限制。 PostgreSQL支持多长的表名?
答案 0 :(得分:6)
根据the PostgreSQL documentation:
标识符 ...标识表,列或其他数据库对象的名称....
系统使用的标识符不超过
NAMEDATALEN-1
个字节;较长的名称可以用命令编写,但它们会被截断。默认情况下,NAMEDATALEN
为64,因此最大标识符长度为63字节。
您可以使用this comment建议的查询来查看此限制:SELECT length(repeat('xyzzy', 100)::NAME);
创建一个500个字符的字符串并将其强制转换为PostgreSQL的NAME
类型,然后检查长度。结果是63
。