Open jzillmann opened 2 years ago
Greetings.
With JSQLParser, your query parses just fine
SQL Text
└─Statements: statement.select.PlainSelect
├─selectItems: statement.select.SelectItem
│ ├─Column: a
│ └─Alias: AS "A\""B"
└─Table: "T1"
@vertical-blank you may have a look at the Tokens
1) S_CHAR_LITERAL
at https://github.com/manticore-projects/JSqlParser/blob/5e7732c870a66afff5b39214b2cfbb0409e12585/src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt#L531
2) or S_QUOTED_IDENTIFIER
at https://github.com/manticore-projects/JSqlParser/blob/5e7732c870a66afff5b39214b2cfbb0409e12585/src/main/jjtree/net/sf/jsqlparser/parser/JSqlParserCC.jjt#LL557C5-L557C24
for more complete Regular Expressions. It should be a copy'n paste option.
is there any update on this issue?
In Postgres such a query is valid:
The single result column will be named
A\"B
. The backslash escape isn't used as escape here, the first inner"
will escape the following"
. To demonstrate the logic a bit more a few examples:A\B
=>A\B
A""B
=>A"B
Now the formatter chokes on this.
will be formatted as
Which is not even executable anymore. Is there any configuration that could alleviate this problem ?