Mir gefällt am DBPro (Visual Studio Team Edition for Database Professionals) einfach unheimlich gut, dass man damit jetzt endlich auch in der Microsoft-Welt so Datenbanken entwickeln kann, wie man es mit der Software macht: offline, lokal getestet, archiv-unterstützt und im Team.
So ist es von MS gedacht:
- Man richtet pro Datenbank ein Projekt ein, dass an das Archiv (z.B. Team System) angebunden wird. Vorhandene Datenbanken können ganz leicht importiert werden.
- Man bearbeitet seine Datenbank ohne direkt in einer konkreten Datenbank rum zu wurschteln, wie man es mit dem "Enterprise-Manager" (Friede seiner Asche) oder dem "Managament-Studio" machen würde.
- Trotzdem hat man Syntax-Check und Konsistenz-Check für bspw. Stored-Procedures. Alle Fehler im Projekt werden in einer Übersicht angezeigt, vergleichbar mit dem Ergebnis eines Compilerlaufs.
- In einem "Build"-Lauf kann man sich die Skripte zur Erstellung der Datenbank "from the scratch" zusammenbauen lassen, die man entweder selber mit sqlcmd.exe einspielen kann oder
- mit einem "Deploy" gleich ausführen kann. Dann wird auf dem in den Projekt-Properties angegebenen Server die DB angelegt.
- Dann kann man alles mit den Unit-Tests für SQL testen und nötigenfalls nachbessern.
- Testdaten kann man sich dazu automatisch generieren lassen.
- Ist man fertig, dann werden alle Änderungen ins Archiv übernommen und stehen für jeden zur Verfügung.
- Um bestehende Datenbanken auf den neuen Stand zu transformieren, kann man sich Delta-Skripte erstellen lassen: zwischen zwei DBs oder zwischen zwei Ständen im Archiv oder zwischen einem Archiv-Stand und einer konkreten DB.
Einfach klasse, oder?
OK, nicht alles was glänzt ist gold und natürlich ist das eine 1.0er-Version. So habe ich auch schon ein paar Verbesserungswünsche auf der Platte, aber an dieser Richtung kommt man nicht mehr so leicht vorbei.