mybatis 批量执行多条update语句

请问你是怎么解决的
2024-12-27 16:11:06
推荐回答(5个)
回答1:

MySQL没有提供直接的方法来实现批量,但可以使用case when语法来实现这个功能。
UPDATE course
SET name = CASE id
WHEN 1 THEN 'name1'
WHEN 2 THEN 'name2'
WHEN 3 THEN 'name3'
END,
title = CASE id
WHEN 1 THEN 'New Title 1'
WHEN 2 THEN 'New Title 2'
WHEN 3 THEN 'New Title 3'
END
WHERE id IN (1,2,3)

回答2:

用foreatch就可以了,具体用法可参照mybatis官方文档

回答3:

批量更新多条,一个UPDATE语句
update tableName where id in #{Ids}
separator="," close=")">
#{item}

回答4:

在数据库链接语句后面加allowMultiQueries=true,更新语句之间用分号隔开

回答5:

我觉得还是在后台循环执行