zoukankan      html  css  js  c++  java
  • mybatis的报错总结_____2Error updating database. Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the ri

    在编写动态sql时 trim的属性写错了,如下图:

    错误示范:

    (接口的xml配置文件中:)

    1  <update id="modifyBill" parameterType="Bill">
    2         update smbms_bill
    3         <trim suffix="set" prefixOverrides="," prefix="where id=#{id}">
    4         <if test="billCode!=null">billCode=#{billCode},</if>
    5             <if test="productName!=null">productName=#{productName},</if>
    6             <if test="productDesc!=null">productDesc=#{productDesc}</if>
    7         </trim>
    8     </update>

    报错日志:

    Error updating database.  Cause: java.sql.SQLSyntaxErrorException: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'where id=3 billCode='33333',
    
    
    //可以看到日志中打印出来的sql语句也是有错的,如下:
    ### SQL: update smbms_bill          where id=? billCode=?,             productName=?,             productDesc=? set

    正确的示范:

    接口的xml配置文件中:

     <!--最后一个没有逗号~~~~~-->
        <update id="modifyBill" parameterType="Bill">
            update smbms_bill
            <trim prefix="set" prefixOverrides="," suffix="where id=#{id}">
            <if test="billCode!=null">billCode=#{billCode},</if>
                <if test="productName!=null">productName=#{productName},</if>
                <if test="productDesc!=null">productDesc=#{productDesc}</if>
            </trim>
        </update>

    打印出来的sql语句:

    [com.xbf.dao.bill.BillMapper.modifyBill]-==>  Preparing: update smbms_bill set billCode=?, productName=?, productDesc=? where id=? 

    总结:(网上找的图,感觉说的很清晰!)

    prefix:字首 eg:set

    prefixOverrides:字首的替换 eg:  ,

    suffix:后缀 eg:where id=#{ id }

  • 相关阅读:
    服务器/服务器架构/阿里云服务器/虚拟机
    第十五章、线程之协程
    第十五章、线程池和进程池
    第十五章、线程之queue模块的各种队列
    第十五章、Python多线程之信号量和GIL
    第十五章、Python多线程同步锁,死锁和递归锁
    第十五章、并发编程之守护线程
    第十五章、并发编程之线程
    抢票小程序
    队列与生产者消费者模型
  • 原文地址:https://www.cnblogs.com/xbfchder/p/11247715.html
Copyright © 2011-2022 走看看