• vanZuider@feddit.de
    link
    fedilink
    English
    arrow-up
    49
    ·
    1 year ago

    Don’t call it “accidental database deletion”. Call it “unannounced live exercise of backup procedure”.

  • Jeena@jemmy.jeena.net
    link
    fedilink
    English
    arrow-up
    13
    ·
    1 year ago

    I did something like that once, I wasn’t very good at SQL but I needed some data, so I logged in into the production database and run my SELECT queries, I didn’t change anything so everything was good, or so I thought.

    I created a cross product over tables with millions of entries and when it didn’t respond I thought it was odd but it was time to go home anyway. On the way home they called me and asked what I did. They had to restart the DB server because once the cache timed out one application after another started failing.

    • EmasXP@lemmy.world
      link
      fedilink
      English
      arrow-up
      4
      ·
      1 year ago

      As a side note, DBeaver actually asks for confirmation if it thinks you are about to do something wonky. I think it’s quite telling just how common this mistake is. We’ve all been there

      • marcos@lemmy.world
        link
        fedilink
        English
        arrow-up
        3
        ·
        1 year ago

        Update and delete should require a where clause. You can always use true or 1 = 1, the gain from omitting it is minimal.

        The fact that no DBMS ever decided to implement this, not even as an option is quite distressing.

  • azimir@lemmy.ml
    link
    fedilink
    English
    arrow-up
    11
    ·
    1 year ago

    Ouch. Gotta wrap those deletes in a transaction and look before it rolls forward. Lessons learned. Time to see if the backups actually have any data on them.

      • azimir@lemmy.ml
        link
        fedilink
        English
        arrow-up
        5
        ·
        1 year ago

        Mine was to format the wrong computer on the first day of my first IT internship. I spent the next six weeks there fixing that oopsie.

  • nighty@lemmy.ml
    link
    fedilink
    English
    arrow-up
    6
    ·
    edit-2
    1 year ago

    Sometimes I dream of getting fired for accidentally doing shit like this. Sweet relief…

    • Dasnap@lemmy.world
      link
      fedilink
      English
      arrow-up
      6
      ·
      1 year ago

      Good companies wouldn’t fire someone for this because:

      1. There should be processes in place to prevent this, or recover from this, anyway. It’s a team/department failure and you would just be the straw that broke the camel’s back.

      2. They now know you’ve experienced this and will hopefully know to never do it again. Bringing in someone else could just reintroduce the issue.

  • jtk@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I did quite a few bad things like that early on. Now I never type UPDATE or DELETE without first doing a SELECT and WHERE. It’s easy to convert to a DELETE and UPDATEs tend to effect only a few fields at a time so the extra effort is worth the peace of mind. It’s a good habit to form, I can’t even think of the last time I did anything horrible.