QA and PROD without a second database
Ask a small engineering team how they separate test from production data work and you usually get one of three answers.
"We have a staging database." Sometimes true, and good, though it's often months out of date — so passing there proves less than people think.
"We comment out the production bit before running." Honest, and terrifying.
"We have report.sql and report_prod.sql." The most common, and the one that quietly rots: the two files drift, and nobody
can say which is correct.
None of these are laziness. They're what you get when environments are a convention rather than a mechanism. Here's the mechanism we chose instead.