<statement>or DELIMITER expected, got ‘id‘)的原因及解决办法

Idea mybatis的xml报错

可能的原因:
在idea里,sql节点有语言注入有检测,你在sql节点写sql语句都不会报错,那么判断检测是根据sql的语言来进行相关判断的,而我们通常在sql节点内的内容都是这样

1
2
3
<sql id="Base_Column_List">
    id, name, create_time, delete_flag
  </sql>

对于idea来说,它认为这不符合sql的验证,所以报错

解决办法
一、不检查sql节点的语法,如图:

二、嗯在sql节点内加点东西:像这样:

1
2
3
4
5
<sql id="Base_Column_List" lang="" databaseId="" >
        <if test="true">
            id, name, create_time,delete_flag
        </if>
    </sql>

总结

在xml里面调用<include refid="Base_Column_List"/>这玩意,其实是在sql里面拼接进相关的代码进去,而sql节点又会对里面的内容进行sql扫描,发现你不符合规范就报错了

结束语(个人查询所得,如有错误欢迎纠正)
posted @   一统天下。  阅读(3340)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示