I have a MySql query, which is given below:
UPDATE signup SET lastname='Lastname', password='123'
WHERE firstname='Firstname';
I am using MySql Workbench to execute the query.
But it's not updating the row and shows this error:
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.
[edit] @ManojSalvi got it, workbench related
MySQL error code: 1175 during UPDATE in MySQL Workbench
Work fine for me...
SQL Fiddle
MySQL 5.6 Schema Setup:
Query 1:
Results:
In mysql workbench the safe mode is enabled by default, so if your
WHERE
clause doesn't have a key it will prevent running the query. Try disabling that using these steps -Edit
>Preferences
>Sql Editor
>uncheck the "Safe Updates"
Note - try reconnecting the server (
Query
>Reconnect to Server
) and than run your query again.MySQL
helps you particularly avoid updating/deleting multiple rows in one shot. To achieve that, it doesn't allow you to runUPDATE
queries without passing the ID parameter. This is called as theSAFE UPDATES
mode.As said by @ManojSalvi, you can set it permanently from the settings.
In case you wanna temporarily disable the said
SAFE UPDATE
mode, you can try the following:-"Safe mode" is on by default in MySQL workbench. You can change it go to mysqlworkbench at the top left –> preferences–> sql editor –> uncheck the safe mode and then try reconnecting. Or you can just type
SET SQL_SAFE_UPDATES = 0;
This will do the same.