首页 > 数据库 >jsqlparser v4.6 版本下sql解析报错

jsqlparser v4.6 版本下sql解析报错

时间:2023-11-06 14:57:14浏览次数:57  
标签:报错 jsqlparser v4.6 sql mybatis plus 解析

项目版本:

springboot 2.7.2

mybatis-plus 3.5.2

jsqlparser 4.6

该版本下mybatis-plus生成的sql文件带有连续\n\n\n

CCJSqlParserUtil.parseStatements("select \n\n\n *  from \n\n dual \n")

再使用jsqlparser进行sql解析时 会出现如下报错

net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "from" "FROM"
    at line 1, column 11.

Was expecting one of:

    "CONNECT"
    "EMIT"
    "GROUP"
    "HAVING"
    "INTO"
    "START"
    "WINDOW"
    <EOF>
    <ST_SEMICOLON>

但其实是因为\n\n\n会导致一句sql被解析为两句sql 从而导致无法正常解析sql的问题 该问题不知道是因为mybatis-plus未注意到该问题 从而导致的sql文件输出异常。还是jsqlparser应该支持这种语法导致的。

实际在项目过程中是如下报错:

net.sf.jsqlparser.parser.ParseException: Encountered unexpected token: "\n\n\n"

目前我的解决方案为替换sql文本中所有的\n。

标签:报错,jsqlparser,v4.6,sql,mybatis,plus,解析
From: https://www.cnblogs.com/dkpp/p/17812677.html

相关文章

  • Python_pytest +文件名,报错—— zsh: command not found: pytest
     原因:由于“通过pip安装pytest不会使其成为系统命令,而是会将其安装到python”“-m命令将pytest作为其自己的命令运行,然后任何后续脚本都将作为参数。”解决:所以我们在命令窗口执行时应该在.py文件所在路径下执行  python-mpytest-vtest_wework.py这个问题终于......
  • 解决适用EntityFramework生成时报错“无法解析依赖项。"EntityFramework 6.4.4" 与 '
    点击添加,出现错误提示:......
  • R语言install.packages("jpeg")报错
    R语言install.packages("jpeg")时报错Infileincludedfromread.c:1:0:rjcommon.h:11:21:fatalerror:jpeglib.h:Nosuchfileordirectoryrjcommon.h:11:21:致命错误:jpeglib.h:没有那个文件或目录#include<jpeglib.h>compilationterminated.make:***[read.o]Error......
  • std::sort 传入成员函数指针报错的解决方案
    问题引入有一个类A,A的某个成员函数需要对A的某些变量进行std::sort,同时要调用A的另一个成员函数作为比较器。如代码所示:structA{vector<int>pos={0,4,2,5,3};boolcmp(intx,inty){returnpos[x]<pos[y];}voiddemo(){vector<int>a={2......
  • 奇数分辨率视频导出报错
    奇数分辨率的导出报错前记:有群u说了个冷知识,说ae里面mp4导出奇数分辨率会报错,我当时就当作个知识点来看待了。最近想起来这件事,就去了解查询了一下,发现是yuv编码还有输出本身的问题。我也只是浅入浅出,内容写的可能有点乱,见谅尝试验证阶段AE内置我用的是23sp版本,记得好像是23版......
  • 下载了powerpaste插件报错
    为什么我下载了powerpaste插件代码中写external_plugins:{powerpaste:"/static/tinymce/powerpaste/plugin.min.js"}然后就会报错tinymce.js:4759GEThttp://localhost:81/static/tinymce/powerpaste/plugin.min.jsnet::ERR_ABORTED404(NotFound)你遇到的问题可能......
  • springboot启动报错[main] o.a.catalina.core.AprLifecycleListener
    详细信息为:---[main]o.a.catalina.core.AprLifecycleListener:Anincompatibleversion[1.2.17]oftheApacheTomcatNativelibraryisinstalled,whileTomcatrequiresversion[1.2.34]解决方法:下载对应版本的native文件,地址为https://archive.apache......
  • 解决openavsa数据库报错的问题
    报错内容如图解决方法如下:卸载OpenVAS:$sudoapt-getremoveopenvas删除OpenVAS的所有依赖项:$sudoapt-getautoremove删除OpenVAS的所有配置文件:$sudorm-rf/etc/openvas/删除OpenVAS的所有数据:$sudorm-rf/var/lib/openvas/安装OpenVAS:$sudoapt-getinstallopenvas更......
  • xadmin报错处理
    Xadmin运行报错ImportError:cannotimportname'DEFAULT_FORMATS'点进入报错信息的源码注释掉代码#fromimport_export.adminimportDEFAULT_FORMATS,SKIP_ADMIN_LOG,TMP_STORAGE_CLASS新添加代码fromimport_export.formats.base_formatsimportDEFAULT_FORMATSfr......
  • vue3路由转发报错Failed to resolve component: router-link
     //在学习vue3路由转发的时候,总是报路由的一些方法无法识别,undefined报错://App.vue:9[Vuewarn]:Failedtoresolvecomponent:router-link//vue路由跳转报错Cannotreadpropertiesofundefined(reading'push')原因:出在你挂载的位置这个路由的u......