bug: oracle函数 解析TABLE OF varchar2(4000) 出错

This commit is contained in:
fanglei
2020-11-03 12:41:46 +08:00
parent 0548fc8274
commit 2a2867b96b
@@ -1927,6 +1927,11 @@ public class OracleStatementParser extends SQLStatementParser {
if (lexer.identifierEquals(FnvHash.Constants.ROWTYPE)) {
lexer.nextToken();
typeName = "TABLE OF " + name.toString() + "%ROWTYPE";
} else if (lexer.token() == Token.LPAREN && lexer.stringVal().equalsIgnoreCase("Varchar2")) {
accept(Token.LPAREN);
int len = this.exprParser.acceptInteger();
accept(Token.RPAREN);
typeName = "TABLE OF " + name.toString() + "(" + len + ")";
} else {
acceptIdentifier("TYPE");
typeName = "TABLE OF " + name.toString() + "%TYPE";