mybatis delete返回值为0

图片说明

就没人,大神来帮帮忙吗?

你这写错了啊,要用foreach循环啊

 <delete id="deleteList" parameterType="list">
        delete
        FROM editing_data
        WHERE
        <foreach item="item" index="index" collection="list">
            id = #{item.id}
            AND task_key = #{item.taskKey}
        </foreach>
  </delete>

    <delete id="batchDeleteStudent" parameterType="java.util.List">  
    DELETE FROM STUDENT WHERE id IN  
    <foreach collection="list" index="index" item="item" open="(" separator="," close=")">   
        #{item}   
    </foreach>  
</delete>  

你那样写是把一个list的结果集当成了一个参数,执行delete是找不到对于的条件就没有删掉一条记录所有返回的结果为哦,像delete和update返回的结果int值代表着对多少条记录数据的操作,

  <delete id="batchDeleteStudent" parameterType="java.util.List">  
    DELETE FROM STUDENT WHERE buyer_id=#{userid,javaType=java.lang.Integer and  id IN  
    <foreach collection="list" index="index" item="item" open="(" separator="," close=")">   
        #{item}   
    </foreach>  
</delete>  

delete和update返回的结果int值代表着对多少条记录数据的操作,

0表示执行操作的数据条数为0,所以看看是不是数据或者SQL的问题

本来一直觉得是0的,看了一圈更加懵圈了