You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在MySQL Workbench中批量执行更新与插入语句提升效率

优化MySQL批量更新与插入语句以提升执行效率

批量更新优化

你原来的4条UPDATE语句可以合并成单条,减少对ABCD.ket表的扫描次数,大幅提升执行效率:

UPDATE ABCD.ket 
SET status = CASE id
    WHEN '1' THEN '3'
    WHEN '6' THEN '13'
    WHEN '5' THEN '33'
    WHEN '4' THEN '23'
END
WHERE id IN ('1', '6', '5', '4');

这条语句通过CASE分支一次性匹配所有需要更新的id,仅需一次表操作就能完成所有更新。

批量插入执行

你的INSERT语句针对不同表,无法合并为单条,但可以直接将所有语句放在同一个查询窗口中一次性执行。不过需要先确认MySQL Workbench的设置:

  • 打开Edit -> Preferences -> SQL Editor
  • 勾选Allow multiple queries选项(允许执行多语句查询)

完整可一次性执行的脚本

将优化后的更新语句和所有插入语句放在一起,直接运行即可:

-- 批量更新ABCD.ket表
UPDATE ABCD.ket 
SET status = CASE id
    WHEN '1' THEN '3'
    WHEN '6' THEN '13'
    WHEN '5' THEN '33'
    WHEN '4' THEN '23'
END
WHERE id IN ('1', '6', '5', '4');

-- 批量插入各表数据
INSERT INTO abcd.xyz (id, name, age, occp, info, status, emp, modifiedBy) VALUES ('1', 'tyu', '15', 'it', 'good', 'onwork', '101', '1');
INSERT INTO abcd.fgd (id, name, age, occp, info, status, emp, modifiedBy) VALUES ('11', 'aqwqe', '15', 'it', 'good', 'onwork', '111', '1');
INSERT INTO abcd.mvx (id, name, age, occp, info, status, emp, modifiedBy) VALUES ('122', 'poiu', '15', 'it', 'bad', 'onwork', '122', '1');
INSERT INTO abcd.lsv (id, name, age, occp, info, status, emp, modifiedBy) VALUES ('1123', 'poou', '15', 'it', 'good', 'onwork', '131', '1');
INSERT INTO abcd.efg (id, name, age, occp, info, status, emp, modifiedBy) VALUES ('1321', 'fghj', '15', 'it', 'bad', 'onwork', '144', '1');

执行步骤

  1. 打开MySQL Workbench,连接到目标数据库
  2. 新建查询窗口,粘贴上述完整脚本
  3. 点击工具栏的执行按钮(闪电图标),即可一次性完成所有更新和插入操作

内容的提问来源于stack exchange,提问作者Rinkesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 23:45:41