[ 
https://issues.apache.org/jira/browse/CALCITE-5018?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

zhangquan updated CALCITE-5018:
-------------------------------
    Description: 
Dear all, I use SqlParser.parseQuery(String sql) sql like as :
{code:java}
select `ID`,`NAME` from hr.emp where dept_id=1 {code}
 

java code

 
{code:java}
String sql = "select `ID`,`NAME` from hr.emp where dept_id=1";
SqlParser.Config config =
        SqlParser.config()
                .withQuoting(Quoting.BACK_TICK);
SqlParser parser = SqlParser.create(sql, config);
SqlNode sqlNode = parser.parseQuery(sql); 


{code}
 

then occur Exception:
{code:java}
Lexical error at line 1, column 11.  Encountered: "`" (96), after : ""
Exception in thread "main" org.apache.calcite.sql.parser.SqlParseException: 
Lexical error at line 1, column 21.  Encountered: "`" (96), after : ""
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.convertException(SqlParserImpl.java:389)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.normalizeException(SqlParserImpl.java:153)
    at 
org.apache.calcite.sql.parser.SqlParser.handleException(SqlParser.java:145)
    at org.apache.calcite.sql.parser.SqlParser.parseQuery(SqlParser.java:160)
    at org.apache.calcite.sql.parser.SqlParser.parseQuery(SqlParser.java:175)
    at 
com.github.quxiucheng.calcite.parser.tutorial.SqlParserConfigSample.quoting(xxxx.java:99)
    at 
com.github.quxiucheng.calcite.parser.tutorial.SqlParserConfigSample.main(xxxx.java:28)
Caused by: org.apache.calcite.sql.parser.impl.TokenMgrError: Lexical error at 
line 1, column 21.  Encountered: "`" (96), after : ""
    at 
org.apache.calcite.sql.parser.impl.SqlParserImplTokenManager.getNextToken(SqlParserImplTokenManager.java:25902)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_scan_token(SqlParserImpl.java:36935)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_259(SqlParserImpl.java:35756)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_117(SqlParserImpl.java:35770)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_118(SqlParserImpl.java:35256)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_156(SqlParserImpl.java:34479)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_67(SqlParserImpl.java:31638)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3_23(SqlParserImpl.java:34219)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_2_23(SqlParserImpl.java:30602)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.TableRef2(SqlParserImpl.java:9292)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.TableRef(SqlParserImpl.java:9268)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.FromClause(SqlParserImpl.java:9158)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.SqlSelect(SqlParserImpl.java:4419)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.LeafQuery(SqlParserImpl.java:631)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.LeafQueryOrExpr(SqlParserImpl.java:16109)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.QueryOrExpr(SqlParserImpl.java:15557)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.OrderedQueryOrExpr(SqlParserImpl.java:505)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.SqlStmt(SqlParserImpl.java:3790)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.SqlStmtEof(SqlParserImpl.java:3828)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.parseSqlStmtEof(SqlParserImpl.java:201)
    at org.apache.calcite.sql.parser.SqlParser.parseQuery(SqlParser.java:158)
    ... 3 more
{code}
 

  was:
Dear all, I use SqlParser.parseQuery(String sql) sql like as :
{code:java}
select `ID`,`NAME` from hr.emp where dept_id=1 {code}
 

java code

 
{code:java}
String sql = "select `ID`,`NAME` from hr.emp where dept_id=1";
SqlParser.Config config =
        SqlParser.config()
                .withQuoting(Quoting.BACK_TICK);
SqlParser parser = SqlParser.create(sql, config);
SqlNode sqlNode = parser.parseQuery(); 


{code}
 

then occur Exception:
{code}
Lexical error at line 1, column 11.  Encountered: "`" (96), after : ""
Exception in thread "main" org.apache.calcite.sql.parser.SqlParseException: 
Lexical error at line 1, column 21.  Encountered: "`" (96), after : ""
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.convertException(SqlParserImpl.java:389)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.normalizeException(SqlParserImpl.java:153)
    at 
org.apache.calcite.sql.parser.SqlParser.handleException(SqlParser.java:145)
    at org.apache.calcite.sql.parser.SqlParser.parseQuery(SqlParser.java:160)
    at org.apache.calcite.sql.parser.SqlParser.parseQuery(SqlParser.java:175)
    at 
com.github.quxiucheng.calcite.parser.tutorial.SqlParserConfigSample.quoting(xxxx.java:99)
    at 
com.github.quxiucheng.calcite.parser.tutorial.SqlParserConfigSample.main(xxxx.java:28)
Caused by: org.apache.calcite.sql.parser.impl.TokenMgrError: Lexical error at 
line 1, column 21.  Encountered: "`" (96), after : ""
    at 
org.apache.calcite.sql.parser.impl.SqlParserImplTokenManager.getNextToken(SqlParserImplTokenManager.java:25902)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_scan_token(SqlParserImpl.java:36935)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_259(SqlParserImpl.java:35756)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_117(SqlParserImpl.java:35770)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_118(SqlParserImpl.java:35256)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_156(SqlParserImpl.java:34479)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_67(SqlParserImpl.java:31638)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3_23(SqlParserImpl.java:34219)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_2_23(SqlParserImpl.java:30602)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.TableRef2(SqlParserImpl.java:9292)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.TableRef(SqlParserImpl.java:9268)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.FromClause(SqlParserImpl.java:9158)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.SqlSelect(SqlParserImpl.java:4419)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.LeafQuery(SqlParserImpl.java:631)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.LeafQueryOrExpr(SqlParserImpl.java:16109)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.QueryOrExpr(SqlParserImpl.java:15557)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.OrderedQueryOrExpr(SqlParserImpl.java:505)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.SqlStmt(SqlParserImpl.java:3790)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.SqlStmtEof(SqlParserImpl.java:3828)
    at 
org.apache.calcite.sql.parser.impl.SqlParserImpl.parseSqlStmtEof(SqlParserImpl.java:201)
    at org.apache.calcite.sql.parser.SqlParser.parseQuery(SqlParser.java:158)
    ... 3 more
{code}
 


> org.apache.calcite.sql.parser.SqlParseException: Lexical error at line 1, 
> column 8.  Encountered: "`" (96), after : ""
> ----------------------------------------------------------------------------------------------------------------------
>
>                 Key: CALCITE-5018
>                 URL: https://issues.apache.org/jira/browse/CALCITE-5018
>             Project: Calcite
>          Issue Type: Bug
>          Components: core
>    Affects Versions: 1.29.0
>            Reporter: zhangquan
>            Priority: Major
>
> Dear all, I use SqlParser.parseQuery(String sql) sql like as :
> {code:java}
> select `ID`,`NAME` from hr.emp where dept_id=1 {code}
>  
> java code
>  
> {code:java}
> String sql = "select `ID`,`NAME` from hr.emp where dept_id=1";
> SqlParser.Config config =
>         SqlParser.config()
>                 .withQuoting(Quoting.BACK_TICK);
> SqlParser parser = SqlParser.create(sql, config);
> SqlNode sqlNode = parser.parseQuery(sql); 
> {code}
>  
> then occur Exception:
> {code:java}
> Lexical error at line 1, column 11.  Encountered: "`" (96), after : ""
> Exception in thread "main" org.apache.calcite.sql.parser.SqlParseException: 
> Lexical error at line 1, column 21.  Encountered: "`" (96), after : ""
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.convertException(SqlParserImpl.java:389)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.normalizeException(SqlParserImpl.java:153)
>     at 
> org.apache.calcite.sql.parser.SqlParser.handleException(SqlParser.java:145)
>     at org.apache.calcite.sql.parser.SqlParser.parseQuery(SqlParser.java:160)
>     at org.apache.calcite.sql.parser.SqlParser.parseQuery(SqlParser.java:175)
>     at 
> com.github.quxiucheng.calcite.parser.tutorial.SqlParserConfigSample.quoting(xxxx.java:99)
>     at 
> com.github.quxiucheng.calcite.parser.tutorial.SqlParserConfigSample.main(xxxx.java:28)
> Caused by: org.apache.calcite.sql.parser.impl.TokenMgrError: Lexical error at 
> line 1, column 21.  Encountered: "`" (96), after : ""
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImplTokenManager.getNextToken(SqlParserImplTokenManager.java:25902)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_scan_token(SqlParserImpl.java:36935)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_259(SqlParserImpl.java:35756)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_117(SqlParserImpl.java:35770)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_118(SqlParserImpl.java:35256)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_156(SqlParserImpl.java:34479)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3R_67(SqlParserImpl.java:31638)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_3_23(SqlParserImpl.java:34219)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.jj_2_23(SqlParserImpl.java:30602)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.TableRef2(SqlParserImpl.java:9292)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.TableRef(SqlParserImpl.java:9268)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.FromClause(SqlParserImpl.java:9158)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.SqlSelect(SqlParserImpl.java:4419)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.LeafQuery(SqlParserImpl.java:631)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.LeafQueryOrExpr(SqlParserImpl.java:16109)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.QueryOrExpr(SqlParserImpl.java:15557)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.OrderedQueryOrExpr(SqlParserImpl.java:505)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.SqlStmt(SqlParserImpl.java:3790)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.SqlStmtEof(SqlParserImpl.java:3828)
>     at 
> org.apache.calcite.sql.parser.impl.SqlParserImpl.parseSqlStmtEof(SqlParserImpl.java:201)
>     at org.apache.calcite.sql.parser.SqlParser.parseQuery(SqlParser.java:158)
>     ... 3 more
> {code}
>  



--
This message was sent by Atlassian Jira
(v8.20.1#820001)

Reply via email to