• We go with both approaches for different circumstances. State based typically working between dev and stage, migration based to production for anything very complex.

    Typically though we will dry run migration scripts on a copy of the live database if we are going that route and then use SQL Compare to verify we have caught everything - I'd call it the best of both.