mybatis批量更新幾千條數(shù)據(jù) mybatis批量更新返回影響行數(shù)恒為1,有解決方案嗎?
mybatis批量更新返回影響行數(shù)恒為1,有解決方案嗎?我猜問題所有者可以使用sqlmapper中的foreach進(jìn)行批處理。實(shí)際上,不建議使用此方法進(jìn)行批處理,因?yàn)楫?dāng)存在大量批處理數(shù)據(jù)時(shí),會(huì)出現(xiàn)性能
mybatis批量更新返回影響行數(shù)恒為1,有解決方案嗎?
我猜問題所有者可以使用sqlmapper中的foreach進(jìn)行批處理。實(shí)際上,不建議使用此方法進(jìn)行批處理,因?yàn)楫?dāng)存在大量批處理數(shù)據(jù)時(shí),會(huì)出現(xiàn)性能問題。如果您堅(jiān)持使用這種方法,請(qǐng)將foreach的數(shù)量控制在50以內(nèi)。
事實(shí)上,mybatis還正式推薦批量處理的方法。問題負(fù)責(zé)人可以試試。這種批量加工的方法可以批量插入數(shù)萬件,而且性能不會(huì)太差。另外,我認(rèn)為如果采用官方推薦的方式,也不會(huì)出現(xiàn)這樣的問題。
官方文件:https://mybatis.org/mybatis-dynamic-sql/docs/insert.html?spm=ata.13261165.0.0.4dc71d1dlF3NxT
注意:提供了批插入,批修改也類似
批更新多個(gè)項(xiàng),一個(gè)update語句update tablename,其中提供了#{IDS}中的id,下面是一個(gè)update語句update tablename,{IDS}中的id在close=”“> {item} </foreach>