improved oracle sql parser.

This commit is contained in:
wenshao
2017-09-21 22:05:27 +08:00
parent f006fbecb8
commit 7268c17624
33 changed files with 1273 additions and 21 deletions
@@ -1874,11 +1874,21 @@ public class SQLStatementParser extends SQLParser {
return parseCreateTrigger();
}
if (lexer.token == Token.FUNCTION) {
lexer.reset(markBp, markChar, Token.CREATE);
return parseCreateFunction();
}
if (lexer.identifierEquals(FnvHash.Constants.PACKAGE)) {
lexer.reset(markBp, markChar, Token.CREATE);
return parseCreatePackage();
}
if (lexer.identifierEquals(FnvHash.Constants.TYPE)) {
lexer.reset(markBp, markChar, Token.CREATE);
return parseCreateType();
}
// lexer.reset(mark_bp, mark_ch, Token.CREATE);
throw new ParserException("TODO " + lexer.info());
} else if (token == Token.DATABASE) {
@@ -1927,11 +1937,18 @@ public class SQLStatementParser extends SQLParser {
} else if (lexer.identifierEquals(FnvHash.Constants.MATERIALIZED)) {
lexer.reset(markBp, markChar, Token.CREATE);
return parseCreateMaterializedView();
} else if (lexer.identifierEquals(FnvHash.Constants.TYPE)) {
lexer.reset(markBp, markChar, Token.CREATE);
return parseCreateType();
}
throw new ParserException("TODO " + lexer.token);
}
public SQLStatement parseCreateType() {
throw new ParserException("TODO " + lexer.token);
}
public SQLStatement parseCreateUser() {
accept(Token.CREATE);
accept(Token.USER);