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

如何创建存储过程更新新增列?表含双主键,需按公式计算赋值

无需游标/循环:批量更新新增列的存储过程实现
  • 完全不需要用游标和循环,直接用单条UPDATE语句就能完成批量赋值,这比逐行处理的游标高效得多,尤其你只有10条记录的场景,没必要搞复杂。

MySQL 存储过程示例

DELIMITER //
CREATE PROCEDURE UpdateNewColumn()
BEGIN
    -- 直接批量更新全表记录,替换成你的实际表名
    UPDATE your_table_name
    SET new_col = quantity * price;
END //
DELIMITER ;

SQL Server 存储过程示例

CREATE PROCEDURE UpdateNewColumn
AS
BEGIN
    SET NOCOUNT ON;
    -- 批量更新,替换成你的实际表名
    UPDATE your_table_name
    SET new_col = quantity * price;
END;

补充说明

  • 把代码里的your_table_name替换成你的真实表名即可。
  • 如果只需要更新特定主键组合的记录,可在UPDATE后加WHERE条件,比如:WHERE company_no = 'C001' AND part_no = 'P001'
  • 哪怕后续记录数增加,这种批量更新的方式性能也远优于游标循环——数据库引擎对批量操作有原生优化,游标逐行处理不仅代码冗余,效率还低。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 05:40:24