1004.标识符和关键字

SQL标识符和关键词必须以一个字母(a-z,也可以是带变音符的字母和非拉丁字母)或一个下划线(_)开始。

后续字符可以是字母、下划线(_)、数字(0-9)或美元符号($)

 

注意根据SQL标准的字母规定,美元符号是不允许出现在标识符中的,因此它们的使用可能会降低应用的可移植性

SQL标准不会定义包含数字或者以下划线开头或结尾的关键词,因此这种形式的标识符不会与未来可能的标准扩展冲突 。

 

系统中一个标识符的长度不能超过 NAMEDATALEN-1 字节(超长默认被截断)。

默认情况下,NAMEDATALEN 的值为64,因此标识符的长度上限为63字节

如果这个限制有问题,可以在src/include/pg_config_manual.h中修改 NAMEDATALEN 常量。

 

关键词和不被引号修饰的标识符是大小写不敏感的。一个常见的习惯是将关键词写成大写,而名称写成小写。

 

受限标识符或被引号修饰的标识符。它是由双引号(")包围的一个任意字符序列。

一个受限标识符总是一个标识符而不会是一个关键字。(“select”是标识符合,select才是关键字)

 

转义字符可以是除了16进制位、加号、单引号、双引号、空白字符之外的任意单个字符。

注意转义字符是被写在单引号而不是双引号内。(双引号是受限标识符)

 

PostgreSQL将非受限名字转换为小写形式与SQL标准是不兼容 的,SQL标准中要求将非受限名称转换为大写形式

posted @ 2020-12-22 00:19  bufuzhou  阅读(181)  评论(0编辑  收藏  举报