如何安全批量更新数据库某个字段

场景

由于前端 bug,尺码组的 sort 字段排序混乱,需要重置为根据插入时间递增的顺序。

解决方案

  1. 备份原数据 :新增 sort_bk 字段,备份原 sort 值。

  2. 批量更新 :通过 SQL 更新 sort 字段,确保其从 1 开始递增:

复制代码

UPDATE size_group_detail d1, (SELECT id, @row := @row + 1 AS new_sort FROM size_group_detail, (SELECT @row := 0) t WHERE size_group_id = 38 AND is_delete = 0) d2 SET d1.sort = d2.new_sort WHERE d1.id = d2.id;

小技巧:一百多个尺码组是,把以上 sql 复制 100′, 复制纵向排列尺码组Ids,选中多行的"38" 把尺码组ids 粘贴上去

3.对账验证 :更新后,对比 sortsort_bk 字段,确保数据正确。

总结

通过备份和批量更新,前后字段对账、确保了数据安全和排序的准确性。

相关推荐
Flying pigs~~1 天前
RAG智慧问答项目
数据库·人工智能·缓存·微调·知识库·rag
misL NITL1 天前
mysql之如何获知版本
数据库·mysql
许彰午1 天前
CacheSQL(二):主从复制——OpLog 环形缓冲区与故障自动恢复
java·数据库·缓存
2401_832365521 天前
JavaScript中rest参数(...args)取代arguments的优势
jvm·数据库·python
2301_779622411 天前
Go语言怎么用信号量控制并发_Go语言semaphore信号量教程【入门】
jvm·数据库·python
2301_766283441 天前
c++如何将控制台输出保存到文件_cout重定向到txt【详解】
jvm·数据库·python
北极的冰箱1 天前
MySQL Ver 8.0.41 for macos14.7密码遗忘
数据库·mysql
XDH_CS1 天前
MySQL 8.0 安装与 MySQL Workbench 使用全流程(超详细教程)
开发语言·数据库·mysql
treacle田1 天前
达梦数据库-统计信息收集-记录
数据库·达梦数据库统计信息收集
审判长烧鸡1 天前
PostgreSQL之索引/函数/触发器
数据库·postgresql·触发器·函数·索引