improved mysql parser.

This commit is contained in:
wenshao
2017-08-20 18:23:47 +08:00
parent 1b557fbc0a
commit 17772cde69
6 changed files with 271 additions and 5 deletions
@@ -90,7 +90,9 @@ public class MySqlReplaceStatement extends MySqlStatementImpl {
}
public void setQuery(SQLQueryExpr query) {
query.setParent(this);
if (query != null) {
query.setParent(this);
}
this.query = query;
}
@@ -1850,10 +1850,9 @@ public class MySqlStatementParser extends SQLStatementParser {
break;
}
} else if (lexer.token() == Token.LPAREN) {
lexer.nextToken();
SQLQueryExpr queryExpr = (SQLQueryExpr) this.exprParser.expr();
SQLSelect select = this.createSQLSelectParser().select();
SQLQueryExpr queryExpr = new SQLQueryExpr(select);
stmt.setQuery(queryExpr);
accept(Token.RPAREN);
}
return stmt;
@@ -240,6 +240,7 @@ public class SQLParser {
case ADVISE:
case TYPE:
case CLOSE:
case OPEN:
alias = lexer.stringVal();
lexer.nextToken();
return alias;