问题
I'm using MySQL Server5.5 in which MySQL Workbench 5.2 CE is included. I'm using MySQL Workbench 5.2 . I have a table named user in DB. I executed the following command on SQL Editor at MySQL Workbench:
UPDATE user SET email = 'abc@yahoo.com' WHERE email='ripon.wasim@yahoo.com';
But unfortunately I got the following error:
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 -> Query Editor and reconnect.
What's the wrong? Help is highly appreciated.
回答1:
Every time you encountered that kind of error when trying to update rows in mysql, It’s because you tried to update a table without a WHERE that uses a KEY
column.
You can fix it using,
SET SQL_SAFE_UPDATES=0;
UPDATE user SET email = 'abc@yahoo.com' WHERE email='ripon.wasim@yahoo.com';
or in the WorkBench
- Edit -> Preferences -> SQL Queries
- Uncheck Forbid UPDATE and DELETE statements without a WHERE clause (safe updates)
- Query --> Reconnect to Server
回答2:
It is more correct to deactivate and reactivate
SET SQL_SAFE_UPDATES=0; --disable
UPDATE user SET email = 'abc@yahoo.com' WHERE email='ripon.wasim@yahoo.com';
SET SQL_SAFE_UPDATES=1; --enable
来源:https://stackoverflow.com/questions/14231278/error-error-code-1175-during-executing-update-command-on-table-using-mysql-wo