2009-07-02 3 views

Antwort

0

Wenn Sie nicht so etwas wie Schienen migrieren, sind in Java-Umgebung oder irgendetwas anderes, überprüfen Sie liquibase. Es ist ziemlich cool, wenn Sie so viel Flexibilität brauchen. Wir verfolgen nur .sql-Dateien, die die gesamte Datenbank einrichten.

1

Abhängig von der Sprache, die Sie verwenden, RoR hat es eingebaut. Derzeit für ein Projekt, das ich in ASP.net MVC mache Ich habe 2 Dateien im Projekt in einem Ordner: Datenbank. Eine Datei enthält die Struktur der Datenbank und eine Datei einige Dummy-Variablen zum Testen. Ich muss sagen, es ist eine mühsame Art, Ihre Datenbank zu teilen, da Sie, wenn Sie etwas aktualisieren, die anderen wissen lassen müssen, dass sie das (aktualisierte) SQL-Struktur-Skript erneut ausführen müssen.

Das Strukturskript löscht Tabellen, wenn vorhanden und liest sie + fügt neue Tabellen hinzu.

Konnte keinen besseren Weg wie db :: migrate von Ruby on Rails finden.

+0

Schienen Migrationen sind erstaunlich. Ich habe mit meinen Shell-Skripts (Dumping-Schemata) + git recht, aber Migrationen haben das Gefühl, auf einen Mercedes zu wechseln, nachdem sie ein paar Jahre lang einen rostigen Ford gefahren haben. – guns

0

Im Allgemeinen würde ich ein Skript erstellen, das in der Lage ist, die Datenbank (d. H. Alle Tabellen, Benutzer, Ansichten, Indizes usw.) und ein anderes Skript zu generieren, das die Datenbank mit Daten füllt. Verwenden Sie dann DBDeploy (ähnlich RoRs-Migrationen), um alle DB-Änderungen zu behandeln. Dann würde ich Build-Ziele für alle diese Skripte in Ant, NAnt, Buildr usw. erstellen. Auf diese Weise ist alles versioniert und in Textdateien, so dass es mit jedem SCM funktioniert.

0

Wenn Sie nach Migrationen ähnlich db suchen: migrieren Sie in Rails, aber Sie sind nicht in Schienen, gibt es andere Optionen. Es gibt migrate4j, ähnlich wie db: migrate, aber in/für Java geschrieben. Es gibt auch Liquibase, die sehr flexibel und (AFAIK) spracheunabhängig ist, aber Sie dazu bringt, alles in XML zu schreiben (was das Gegenteil von "the Rails way" ist).

0

Wenn Sie sich Apache ODE ansehen, haben sie eine h2.rake Aufgabe für Buildr, die eine Datenbank zum automatischen Testen erstellt.

Verwandte Themen