Things That Shouldn’t Be Normal in Database Development (28 minute video/podcast episode)

Many people use entrenched processes for database development that have been in place so long that it’s hard to imagine doing it any other way. In this episode, I share three things that should NOT be normal for database development– but which are incredibly common. This episode is inspired by the book, “The Unicorn Project”, by Gene Kim.

Prefer to listen on the go? Get this episode on iTunesplay the audio file, or find Dear SQL DBA in your favorite podcast app.

2 Comments. Leave new

  • Another plus with getting database code into a cicd pipeline is that static analysis can be added as a step in the build process. So you get a build, unit test and static analysis on your feature branches (assuming git) before anything is merged to a common branch. More control over coding standard can be exercised this way and one can even prevent merges if there is an increase in code smell.

    Having reaped the benefits of treating database code like regular application code it is hard to imagine going back to the days of manual deployments. Looking back now it just seems to have been utter madness and recklessness to have been manually deploying database code.

  • Hi Kendra,

    Thanks a lot for what you’re giving us here, it’s so valuable.

    I arrived in a team with none of the 3 point mentionned, went through RedGate’s article and yours

    With SSDT, I imported the database… and was greeted with “The maximum number of errors has been reached”.
    After fixing all of them (mostly orphan procedures), I tried to set up a new empty environment for dev… failed!

    Some DLL / permission / login issue later (not that trivial with SSDT) … we’re done!

    … uhm almost, despite training and communication, some teammates are still making prod changes with SSMS, bypassing the SSDT pipeline…
    Reconciliating Master and Prod has become a sad routine

    Still on my christmas list:
    – DB clone tools for dev: we have to work on an empty DB or full dbbackup
    – Pipeline user/login and no more SSMS quickfix: remove DDL write to datamanager (me included)
    – Docker it
    – Static data at setup/deploy

    It’s a long journey, but totally worth it!

    Tools : VS/SSDT/Gitlab

    So again, thanks a lot!



Share a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: