Navicat如何批量修改特定条件的数据

在 Navicat 中更改数据非常容易。
您想要更改哪些条件数据?您需要执行以下操作:
---
使用查询生成器进行修改。

1 .找到合适的桌子 例如,对于 users 表,在数据库浏览器中右键单击并选择查询生成器。

2 选择“更新” 单击构建器中的更新并将用户拖动到表区域。

3 .设定条件 对于WHERE,编写过滤条件,例如country='China'。
这只是改变了来自中国的批次数据。

4 .更改字段 在“设置”区域中,选择要更改的字段(例如状态),并将其设置为“活动”。

5 执行SQL 构建器自动生成类似于以下的 SQL: SQL 更新用户 SET status='active' WHERE country='China'; 只需单击“运行”即可。

---
手动编写和修改SQL
如果你了解SQL,就直接在编辑器中编写。
SQL 更新产品 SET 价格=price1 .1 WHERE 类别='电子'; 这行代码将产品表中的category='Electronics' 的价格增加了1 0%。

---
注释
1 .防止SQL注入 不要将用户输入直接输入到 SQL 中。
例如,以下行是危险的: SQL UPDATE user SET status='" + userInput + "' WHERE country='" + userInput + "'"; Navicat 会自动处理此问题,但需要参数化才能手动编写 SQL。

2 .类型正确。
例如,status 是一个整数,不能分配给像“active”这样的字符串。

3 不去纠正自己的错误 如果 WHERE 条件写得不正确,整个表都可能被更改。
首先在测试库中运行它或使用 Navicat 预览要更改的行。

4 请先备份 在进行批量更改之前,必须对整个库进行打包和备份。

5 批量编辑大表 例如,一个large_table有数百万条数据,并且是批量修改的。
SQL UPDATElarge_table SET flag=1 其中 id 介于 1 和 1 000 之间; UPDATElarge_table SET flag=1 其中 id 介于 1 001 和 2 000 之间; 这样你的服务器就不会崩溃。

6 .留下操作日志 写下您更改的内容、更改时间以及更改者。

---
常见问题

更改后没有反应? 检查WHERE条件是否写正确或者字段是否有堆栈触发。


您的数据是否已损坏? 从备份中快速恢复。
类型可能被混淆了,或者其他操作可能同时发生了变化。


服务器宕机了吗? 表在大量更新后被锁定。
添加索引优化条件或降低事务隔离级别。

---
坦率地说,为了省去麻烦,要么使用构建器,要么使用 SQL要么手动编写以加快速度。
但是,您需要加强安全性,并且进行备份是一个很好的做法。

SQL批量修改某字段的一部分数据

是的,使用UPDATE语句批量更改数据。
首先我们来说说表和字段,比如更新员工工资。
然后直接添加新值,例如B.工资加1 0%。
为了准确地进行更改,请使用 WHERE 来选择记录,不要随意更改。
比如,只有工资低于5 万的人才会得到加薪。
如果比较复杂,可以使用函数来更改,例如: B.更改电子邮件前缀。
但操作前请做好备份,不要随意更改。
如果你犯了一个错误,你就会遇到麻烦。