【mysql】 如何一次性同时insert、delete、update多条数据?

4 篇文章 0 订阅

第一种方法:存储过程

一句话总结:写个存储过程执行(例如我们在测试的时候 或者自己写着玩的时候 用存储过程会方便些)
打开Navicat 在查询里面输入:
test() 是存储过程方法名,
DECLARE bank_id int DEFAULT 173: 声明int类型变量bank_id默认为173;
WHILE bank_id < 1000 DO :当bank_id<1000的时候执行(前置条件: bank_id作为主键 且自增)
INSERT into sys_bank(bank_id,station_name) values(bank_id,‘汽车站’); 要执行的sql 同理可以为update delete等
SET bank_id = bank_id + 1; 设置bank_id变量自增
结束循环

drop procedure if exists test;
create procedure test()
BEGIN
DECLARE bank_id int DEFAULT 173;
WHILE bank_id < 1000 DO

INSERT into sys_bank(bank_id,station_name) values(bank_id,'汽车站');

SET bank_id = bank_id + 1;
END WHILE;
END

call test();

在函数里面就可以看到该方法了,点击执行 (当然亦可以直接在函数里面创建存储过程)
在这里插入图片描述

第二种方法:sql批量(生产推荐使用)

批量修改:可以用case when写,demo: 批量修改
批量增加和删除比较简单,批量增加: insert into t_table (col1,col2) values (value1,value2),(value3,value4)
批量删除 : delete from t_table where id in(xxx,xxxxxx,xxxxxx)

参与评论 您还未登录,请先 登录 后发表或查看评论

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

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
©️2022 CSDN 皮肤主题:大白 设计师:CSDN官方博客 返回首页

打赏作者

孟秋与你

你的鼓励将是我创作的最大动力

¥2 ¥4 ¥6 ¥10 ¥20
输入1-500的整数
余额支付 (余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值