问:
mysql报错 Error Code: 1175. You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column.
答:
这是由于数据库在安装之后一般默认了安全模式,可以更改默认设置。
mysql中的SQL_SAFE_UPDATES变量为了保证数据的安全性,限制更新和删除的数据量,设置了默认值为1。
当SQL_SAFE_UPDATES = 1时,不带where和limit条件的update和delete操作语句是无法执行的,即使是有where和limit条件但不带key column的update和delete也不能执行。
当SQL_SAFE_UPDATES = 0时,update和delete操作将会顺利执行。
方法一:命令语句法
当出现以上报错提示时,执行SET SQL_SAFE_UPDATES=0 后就可以执行你的语句了; (注意标点符号的英文状态)
方法二:图形化界面操作法
在MySQL Workbench中,可以在菜单栏的“Edit” -> “Preferences” -> “SQL Editor”中找到“Safe Updates”选项,将其取消勾选即可。然后重新连接数据库,再执行UPDATE或DELETE语句即可。但需要注意的是,关闭安全更新模式可能会导致数据丢失,因此在执行UPDATE或DELETE语句时需要谨慎操作。
取消了安全更新模式后,例如:delete from 表1 这样的无where条件的delete操作就可以执行了,这个操作删除表的所有数据但保留表结构
暂无数据