【MySQL】 异常 sql injection violation, syntax error:

异常描述: java

Cause: java.sql.SQLException: sql injection violation, syntax error: web

异常信息:sql

SQL:spa

<insert id="addFloorGoods" parameterType="Map">
       INSERT INTO
           home_floor_goods(
           floor_code,
           sku_code,
      display_sequence,
      website_code)
       VALUES
      <foreach collection="array" item="code" separator=",">
         (#{code.floorCode},
         #{code.itemSkuCode},
         (SELECT IFNULL(a.sum,1) FROM ( SELECT (MAX(display_sequence) + 1) sum FROM home_floor_goods) a)
         #{websiteCode})
      </foreach>
   </insert>

SQL问题:code

少写了一个 , blog

<insert id="addFloorGoods" parameterType="Map">
       INSERT INTO
           home_floor_goods(
           floor_code,
           sku_code,
      display_sequence,
      website_code)
       VALUES
      <foreach collection="array" item="code" separator=",">
         (#{code.floorCode},
         #{code.itemSkuCode},
         (SELECT IFNULL(a.sum,1) FROM ( SELECT (MAX(display_sequence) + 1) sum FROM home_floor_goods) a),
         #{websiteCode})
      </foreach>
   </insert>

总结:it

出现这种报错,检查思路io

1. 检查出错的地方,字符是否正确或者多写或者少写了字符class

2.若是没有找到,手动书写一遍foreach

3. 考虑关键字是否冲突

相关文章
相关标签/搜索