mybatis的批量刪除操作


需求描述:將符合某條件的幾條記錄刪除

解決思路:對於多個id,可以使用sql關鍵詞 in ,只要滿足數據庫的id在你的id集合或者list中,就刪除,從而實現批量刪除。循環delete方法是在是low到爆,就不再提了。

代碼:

List<OhSysPriRoleOrg> roList =  (List<OhSysPriRoleOrg>)dao.findForList("OhSysPriRoleOrgMapper.getResByRoleIdAndOrgId",paramMap);
//刪除
dao.batchDelete("XXXRoleOrgMapper.deleteById",roList);
mapper中的sql:
<delete id="deleteById" parameterType="String">
delete from <include refid="tableName"></include>
where
role_org_id in
<foreach item="item" index="index" collection="list" open="(" separator="," close=")">
#{item.roleOrgId}
</foreach>
</delete>

總結:注意用好foreach就行,其中的collection是什么類型的一定要對應好。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM