"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.
I once dropped a table in a production database.
I never should have had write permissions on that database. You can bet they changed that when clinicians had to redo four days of work because the hosting company or whatever only had weekly backups, not daily.
So, I feel your pain.
Remember that guy who just started that week and was following instructions on how to set up his dev environment, and in the walkthrough docs they supplied the production credentials and then went on about how to recreate the dev environment from scratch.
That was not a good day for the new guy, or the company.
https://www.theregister.com/2017/06/05/dev_accidentally_nuked_production_database_was_allegedly_instantly_fired/
(Not linking to the original Reddit post on general principles)
deleted by creator