java自动修改mysql_Java代码自动生成Mysql批量修改

关于MySQL批量插入工具类

关于很多老项目要用到jdbc进行批量更新的情况写了一个工具类

public static StringBuilder test(List ids,List datas){

StringBuilder sql1 = new StringBuilder("UPDATE article SET recommendArticle=(CASE id ");

StringBuilder sql2 = new StringBuilder("");

for (int i=0;i

sql2.append("WHEN "+ids.get(i)+" THEN "+datas.get(i)+" ");

}

sql2.append("ELSE recommendArticle END),");

sql2.append("recommendAsk = (CASE id ");

for (int i=0;i

sql2.append("WHEN "+ids.get(i)+" THEN "+datas.get(i)+" ");

}

sql2.append("ELSE recommendAsk END)");

String s = ids.toString();

String idsStr = s.substring(1, s.length()-1);

sql2.append("WHERE id in("+idsStr+")");

sql1.append(sql2);

return sql1;

}

注意事项

1.第一个List集合是要修改的记录的id,第二个List是要修改的记录的数据,我这里的使用场景是要修改的两个字段的记录值都是相同的,所以一个数据填充到两列,当然如果你要修改的每列的数据不相同,根据需求加形参列表即可。注意点:要修改的记录id和数据的顺序必须是相同的,保证有序且一一对应。

点赞

收藏

分享

文章举报

3_jwenk

de638df49f1d5a3342eecff86bcb011e.png

1000-7

发布了11 篇原创文章 · 获赞 0 · 访问量 1014

私信

关注

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值