执行sql语句
DELETE FROM osc_notices.notice_model WHERE module_name='xxx';
报错:
DELETE FROM osc_notices.notice_model WHERE module_name='xxx' Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column. To disable safe mode, toggle the option in Preferences -> SQL Editor and reconnect. 0.016 sec
#mysqlworkbench执行sql操作命令报错安全模式打开,需关闭后才能执行删除操作
解决办法:
方法 1:在MySQL Workbench中禁用安全更新模式(Safe Update Mode)
点击顶部菜单中的 “Edit”(编辑)。
选择 “Preferences”(首选项)。
在左侧面板中选择 “SQL Editor”(SQL 编辑器)。
在右侧面板中取消选中 “Safe Updates”(安全更新)复选框。
点击 “OK”(确定)保存更改。
现在你可以重新连接到数据库,并再次尝试执行 DELETE 语句,应该不再报错。
方法 2:使用带有 WHERE 子句的 KEY 列如果你想继续使用安全更新模式,你可以修改你的 DELETE 语句,确保 WHERE 子句使用一个 KEY 列。例如,如果你的表有一个名为 “id” 的列作为主键,你可以这样修改 DELETE 语句:
sqlCopy codeDELETE FROM osc_notices.notice_model WHERE module_name='xxx' AND id = 1;