"UPDATE table_name SET w = $1, x = $2, z = $4 WHERE y = $3 RETURNING *",

does not do the same as

"UPDATE table_name SET w = $1, x = $2, y = $3, z = $4 RETURNING *",

It’s 2 am and my mind blanked out the WHERE, and just wanted the numbers neatly in order of 1234.

idiot.

FML.

  • @marcos@lemmy.world
    link
    fedilink
    649 months ago

    And a development environment. And not touch production without running the exact code at least once and being well slept.

        • @snail_hatan@lemmy.ml
          link
          fedilink
          39 months ago

          Totally right! You must set yourself up so a fool can run in prod and produce the expected result. Which is the purpose of a test env.

      • @snail_hatan@lemmy.ml
        link
        fedilink
        0
        edit-2
        9 months ago

        Replied hastily, but the way to run db statements in prod while dealing with sleep deprivation and drinking too much is to run it a bunch in several test env scenarios so you’re just copy pasting to prod and it CAN confidently be done. Also enable transactions and determine several, valid smoke tests.

        Edit: a -> several