mybatis實現(xiàn)批量更新 mybatis的怎么在mysql中循環(huán)更新數(shù)據(jù)?
mybatis的怎么在mysql中循環(huán)更新數(shù)據(jù)?Java MySQL mybatis可以使用以下寫入方法批量更新數(shù)據(jù)庫,但必須配置數(shù)據(jù)庫連接:&allowmultiqueries=true,例如
mybatis的怎么在mysql中循環(huán)更新數(shù)據(jù)?
Java MySQL mybatis可以使用以下寫入方法批量更新數(shù)據(jù)庫,但必須配置數(shù)據(jù)庫連接:&allowmultiqueries=true,例如:jdbc:mysql://192.168.1.236:3306/測試?useUnicode=true&characterEncoding=UTF-8&allowMultiQueries=true
我猜問題所有者可能會使用sqlmapper中的foreach進(jìn)行批處理。實際上,不建議使用此方法進(jìn)行批處理,因為當(dāng)存在大量批處理數(shù)據(jù)時,會出現(xiàn)性能問題。如果您堅持使用這種方法,請將foreach的數(shù)量控制在50以內(nèi)。
事實上,mybatis還正式推薦批量處理的方法。問題負(fù)責(zé)人可以試試。這種批量加工的方法可以批量插入數(shù)萬件,而且性能不會太差。另外,我認(rèn)為如果采用官方推薦的方式,也不會出現(xiàn)這樣的問題。
官方文件:https://mybatis.org/mybatis-dynamic-sql/docs/insert.html?spm=ata.13261165.0.0.4dc71d1dlF3NxT
注意:提供了批插入,批修改也類似
批更新多個項,一個update語句update tablename,其中提供了#{IDS}中的id,下面是一個update語句update tablename,{IDS}中的id在close=”“> {item} </foreach>