一、问题描述
在执行delete语句的时候,如
delete from e_roles;
可能会提示MySQL在保护模式无法进行删除, 错误如下
10:30:01 delete from e_roles 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.0028 sec
MySQL在保护模式下delete数据需要通过id条件来删除,如
delete from e_roles where key_id = '123';
这是MySQL对数据保护的一种方案,可以通过以下SQL进行状态查询
show variables like 'sql_safe%';
安全模式状态
二、解决方案
如果想要无条件删除数据,可以将MySQL的保护模式关闭,执行SQL
SET SQL_SAFE_UPDATES = 0;
或者
SET SQL_SAFE_UPDATES = off;