mirror of
https://github.com/alibaba/druid.git
synced 2023-03-04 19:17:16 +00:00
improved oracle sql parser.
This commit is contained in:
@@ -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);
|
||||
|
||||
Reference in New Issue
Block a user