Todd's MySQL Blog

Tiny tidbits of trivia from Todd

Workbench called me a dummy!

Seriously, it did.  Sorta.

I use Workbench for my daily work, and it’s a great tool.  If you haven’t tried the 5.2 release yet, you should.  While performing some maintenance, I happened to issue a DELETE statement against a table which had no indexes (it was 10 rows), and Workbench complained:

Error Code: 1175
You are using safe update mode and you tried to update a table without a WHERE that uses a KEY column

It turns out this is a new feature in 5.2.26 (and is still there in 5.2.27) – Workbench now uses the equivalent of –safe-updates mode for the mysql command-line client (also known as the –i-am-a-dummy option – seriously).  This wasn’t exactly convenient for me, especially since the DELETE was part of a larger script which I then had to revise and step through manually after it failed, but there’s an easy way to change this behavior.  If you’re like me, you might consider disabling this:

  • Go to Edit -> Preferences
  • Select the SQL Editor tab
  • Uncheck “Forbid UPDATE and DELETE statements without a WHERE clause (safe updates)”

Despite the text, the –safe-updates mode affects more than UPDATE and DELETE statements without WHERE clauses – it requires such statements to explicitly use indexes.

I’m changing this behavior on my installation before I run into other problems.

I’m no dummy.  :)

Single Post Navigation

22 thoughts on “Workbench called me a dummy!

  1. robsn on said:

    ty. just ran into that X)

  2. Vince Kruger on said:

    Hi,

    just a note on this, remember to restart the application after making this change…

    :)

  3. kostrivec on said:

    That’s what i was looking for, thank!
    By the way, don’t forget to RESTART workbench after change of this setting to make it work.-]

  4. Todd Farmer on said:

    My change took effect without a restart, but it’s a good tip to keep in mind if your experience differs. Thanks Vince and kostrivec!

  5. Matt Way on said:

    Grrrr

    I hate this dumbing down of software.

    Thanks for the article on how to disable “safe-mode”

  6. tmloliv on said:

    Perfect! That’s exactly what I needed! :) Thank you, thank you, thank you for sharing.

  7. HermanX on said:

    It didnt allow me even when I had where clause …

  8. Haxy Waxy on said:

    LOL Gota love command line dummies! I am one too!

  9. Thanks, I just run into this myself… and it took me a while to realize I had to restart. Was it too hard to have a prompt about restarting app for changes that need restart?

    Great tool, but a lot of strange behavior. Worth it though.

  10. Thanks a lot. I just ran into this and was getting super pissed off. This worked after I restarted the program.

  11. mandeep gill on said:

    thanx .. i just updated from workbench 5.1 to 5.2. and it is giving me lot of troubles. thanx for the help.

  12. punkpette on said:

    lol thank u

  13. That helped.
    Thank you

  14. Vamshi Kiran on said:

    Thanks a lot, its working after unchecking the option which you have mentioned in the article. Thanks once again… :)

  15. It agree, very amusing opinion

  16. Bosh on said:

    Thanks, this is exactly what I was looking for :)

  17. Nicser on said:

    Gracias.

  18. Todd Farmer on said:

    De nada!

  19. Eric on said:

    I know this post was a while ago, but for the record looks like the setting is in “SQL Queries”-tab now.

  20. Todd Farmer on said:

    Thanks for helping keep this advice current, Eric!

  21. Joe Caputo on said:

    FYI, you don’t need to restart the whole application… just close your current DB connection tab(s) and re-connect.

  22. Todd Farmer on said:

    Great tip, Joe – thanks! I think that behavior might be more recent than my original post, so thanks for keeping the advice current!

Leave a Reply

Your email address will not be published. Required fields are marked *


eight − = 1

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>