improved sql parser.

This commit is contained in:
wenshao
2017-10-18 15:55:24 +08:00
parent 29a5b5637c
commit 377d9346b8
18 changed files with 705 additions and 84 deletions
@@ -1244,12 +1244,17 @@ public class SQLExprParser extends SQLParser {
public SQLName name() {
String identName;
long hash = 0;
if (lexer.token == Token.LITERAL_ALIAS) {
identName = lexer.stringVal();
lexer.nextToken();
} else if (lexer.token == Token.IDENTIFIER) {
identName = lexer.stringVal();
char c0 = identName.charAt(0);
if (c0 != '[') {
hash = lexer.hash_lower();
}
lexer.nextToken();
} else if (lexer.token == Token.LITERAL_CHARS) {
identName = '\'' + lexer.stringVal() + '\'';
@@ -1312,7 +1317,7 @@ public class SQLExprParser extends SQLParser {
}
}
SQLName name = new SQLIdentifierExpr(identName);
SQLName name = new SQLIdentifierExpr(identName, hash);
name = nameRest(name);