I was over-thinking it. And this is an InnoDB table, so I'm not sure why it autocommitted.

Just put in your simpler version and yup, it works.