views:

144

answers:

2

Hi Guys,

I'm looking at versioning databases and came across the usual articles regarding how to do this (coding horror, ode to code, etc). This all make perfect sense to me, however I'm trying to find a script runner that will run the sql scripts for me. All these articles mention having something to run them automaticaly, but none of them make any recomendations.

Does anybody know of any utils for running these scripts? Ideally something that works in the following way:

  1. Runs everything in a transaction so if any single update fails, the whole thing fails
  2. I have control over the name of the scheme version database table
  3. Ability to have a series of scripts that are always run if an upgrade takes place
  4. Can be run as part of an automated task

    EDIT

  5. Open Source

A: 

Visual Studio 2008 (Database Edition or Enterprise) does what you need, along with Visual Studio Team System or Source Safe.

Paulo Santos
It does?? More details would be useful.
Sam
+1  A: 

Check out SSW SQL Deploy - it would appear to do just about all you're asking for. It keeps track of already executed scripts, it'll run a whole batch of scripts at once and on multiple servers (if required), and so forth.

alt text

It's a pretty simple, but nifty tool - highly recommended!

marc_s