bug fixed for oracle sql parser

This commit is contained in:
温少
2012-02-29 17:31:36 +08:00
65 changed files with 2937 additions and 183 deletions
@@ -65,7 +65,8 @@ public class SQLParser {
return alias;
}
if (lexer.token() == Token.YEAR || lexer.token() == Token.DAY || lexer.token() == Token.KEY) {
if (lexer.token() == Token.YEAR || lexer.token() == Token.DAY || lexer.token() == Token.KEY
|| lexer.token() == Token.CASE || lexer.token() == Token.TIMESTAMP) {
alias = lexer.token.name();
lexer.nextToken();
return alias;
@@ -92,7 +93,9 @@ public class SQLParser {
} else if (lexer.token() == Token.LITERAL_CHARS) {
alias = "'" + lexer.stringVal() + "'";
lexer.nextToken();
} else if (lexer.token() == Token.YEAR || lexer.token() == Token.DAY) {
} else if (lexer.token() == Token.YEAR || lexer.token() == Token.DAY || lexer.token() == Token.TIME
|| lexer.token() == Token.MONTH || lexer.token() == Token.CASE || lexer.token() == Token.AT
|| lexer.token() == Token.TIMESTAMP) {
alias = lexer.token.name();
lexer.nextToken();
}
@@ -114,7 +117,8 @@ public class SQLParser {
lexer.nextToken();
} else {
setErrorEndPos(lexer.pos());
throw new SQLParseException("syntax error, expect " + token + ", actual " + lexer.token() + " " + lexer.stringVal());
throw new SQLParseException("syntax error, expect " + token + ", actual " + lexer.token() + " "
+ lexer.stringVal());
}
}