有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

mysql如何解决线程“main”java中的异常。lang.RuntimeException从视图SQL代码中提取SQL目标列表时出错

有人知道如何解决这个错误吗

原因:net。旧金山。jsqlparser。解析器。ParseException:遇到意外标记:“选择”<;K_选择>; 在第1行第1列

我期待的是:

"ALTER"
"CALL"
"COMMENT"
"COMMIT"
"DECLARE"
"DELETE"
"DESCRIBE"
"DROP"
"EXEC"
"EXECUTE"
"EXPLAIN"
"INSERT"
"MERGE"
"REPLACE"
"SET"
"SHOW"
"TRUNCATE"
"UPDATE"
"UPSERT"
"USE"
"VALUES"
"WITH"

at net.sf.jsqlparser.parser.CCJSqlParser.generateParseException(CCJSqlParser.java:22439)
at net.sf.jsqlparser.parser.CCJSqlParser.jj_consume_token(CCJSqlParser.java:22286)
at net.sf.jsqlparser.parser.CCJSqlParser.SingleStatement(CCJSqlParser.java:229)
at net.sf.jsqlparser.parser.CCJSqlParser.Statement(CCJSqlParser.java:75)
at net.sf.jsqlparser.parser.CCJSqlParserUtil.parse(CCJSqlParserUtil.java:49)
... 15 more

进程已完成,退出代码为1

我正在做一个项目,在这个项目中,jar表单中的库使用jsqlparser,而这些库我无法触及

我正在使用mySQL数据库作为数据库


共 (1) 个答案

  1. # 1 楼答案

    这是来自JSqlParser的解析异常。此库无法成功解析给定的SQL语句

    从你的问题来看,我不太确定你对旧图书馆的访问有多有限JSqlParser例如,正在积极开发(https://github.com/JSQLParser/JSqlParser)。所以,也许你只是使用了一个太旧的版本

    首先,开始查找有问题的SQL

    现在您有两个选择:

    1. 只需将此SQL转换为JSqlParser理解的版本
    2. 由于您编写了无法触及项目库的代码,因此这可能是一个无法解决的问题:在github上归档一个问题,以使JSqlParser支持您的特定需求,解决此问题后,使用新版本的JSqlParser