The crux of the problem is that DBMSs aren't version friendly. In fact they
aren't developer friendly.

On May 7, 2010 2:17 PM, "Greg Keogh" <g...@mira.net> wrote:

 Good timing on this subject, as I was at a meeting this morning where we
discussed how to manage multiple databases that are slowly diverging from
each other and we have to stop this happening in a reliable way. We don’t
have a dedicated DBA, just 3 developers all doing mixed tasks.



We traditionally sent each other scripts to modify different DBs, but no
matter how hard you try, they still diverge and things may happen in the
wrong order and waste time. So we used RedGate to compare DBs and tell us
how we had diverged and how to get the schemas back in sync again. I was
never happy with this and I tried to convince the others that we need a
master script to create the real DB and standard enum rows and a similar
tool to migrate data from a known base DB version.



One of our blokes has finally done the right thing, and after long hours of
concentration has made master scripts to create and load DBs. We still find
it’s a nuisance that you can’t manage DB scripts in version control as
smoothly as you can with source code.



Where is the “source of truth” for a database? It’s not one of the DBs
themselves, it’s the script that makes the DB. DB compare tools should be
for sanity/safety checks, not for primary guidance in DB development.



Greg

Reply via email to