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

MySQL执行UPDATE语句报错1175:处于安全更新模式的问题求助

解决MySQL安全更新模式导致的UPDATE错误

出现Error Code: 1175 You are using safe update mode错误,是因为MySQL的安全更新模式默认开启,它会拦截未通过主键/唯一索引过滤的UPDATE/DELETE操作,避免误修改全表数据。以下是几种可行的解决方法:

方法一:临时关闭当前会话的安全更新模式

在当前MySQL会话中先执行关闭命令,完成更新后可按需重新开启:

-- 关闭安全更新模式
SET SQL_SAFE_UPDATES = 0;

-- 执行你的更新语句
UPDATE cats SET breed='Shorthair' WHERE breed='Tabby';

-- 可选:重新开启安全更新模式
SET SQL_SAFE_UPDATES = 1;

注意:这个设置仅对当前会话生效,重新连接MySQL后会恢复默认配置。

方法二:修改UPDATE语句,加入主键过滤条件

你的表已定义cat_id为主键,只需在WHERE子句中添加一个用到主键的条件,就能绕过安全模式的限制:

UPDATE cats SET breed='Shorthair' WHERE breed='Tabby' AND cat_id IS NOT NULL;

也可以用子查询关联主键:

UPDATE cats 
SET breed='Shorthair' 
WHERE cat_id IN (SELECT cat_id FROM cats WHERE breed='Tabby');

方法三:永久修改MySQL配置(谨慎操作)

如果需要长期关闭安全更新模式,可以修改MySQL的配置文件:

  1. 找到配置文件(Linux下为my.cnf,Windows下为my.ini)中的[mysqld]段落
  2. 添加或修改以下配置项:
sql_safe_updates=0
  1. 重启MySQL服务使配置生效
    注意:永久关闭安全更新模式会增加误操作风险,仅建议在明确需求的场景下使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.12 17:33:25