我需要解析PostgreSQL的SQL名称,并确保它始终符合。
我知道,例如,SQL名称/标识符甚至可以包含一个空格。
我试图找出的是 - 在整个PostgreSQL语法中是否有一个用例,可以传入一个空的""
SQL名称/标识符,但仍被视为有效?
我想知道我是否应该在PostgreSQL中解析""
始终无效。
答案 0 :(得分:1)
根据SQL标准,空引用的标识符无效。
当您尝试使用""
:
ERROR: zero-length delimited identifier at or near """"
无论如何它会识别出什么?没有标识符可以标识空标识符。
您可以在此处找到有关语法的更多信息:http://www.postgresql.org/docs/9.4/static/sql-syntax-lexical.html
带引号的标识符可以包含任何字符,但字符除外 代码为零。 (要包含双引号,请写两个双引号。) 这允许构造否则将构造表或列名称 不可能,例如包含空格或&符号的那些。该 长度限制仍然适用。