6个回答
2015-08-04 · 知道合伙人互联网行家
关注
展开全部
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)
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)
展开全部
用foreatch就可以了,具体用法可参照mybatis官方文档
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
批量更新多条,一个UPDATE语句
update tableName where id in #{Ids}
<foreach collection="roleIds" item="item" index="index" open="("
separator="," close=")">
#{item}
</foreach>
update tableName where id in #{Ids}
<foreach collection="roleIds" item="item" index="index" open="("
separator="," close=")">
#{item}
</foreach>
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
在数据库链接语句后面加allowMultiQueries=true,更新语句之间用分号隔开
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询