5 Stimmen

Wie kann ich "Migration" DDL aus NHibernate-Mappingdateien generieren?

Ich verwende NHibernate 2 und PostgreSQL in meinem Projekt. Die SchemaExport-Klasse erledigt einen tollen Job bei der Generierung des DDL-Schemas für die Datenbank, aber das funktioniert nur bis zur ersten Anwendung.

Gibt es einen Weg, um mit den NHibernate-Mapping-Dateien "Migration" DLL (Batch von "ALTER TABLE"'s anstelle von DROP/CREATE-Paar) zu generieren?

10voto

Ryan Rinaldi Punkte 3789

Schauen Sie sich SchemaUpdate an. Sehr ähnliche API wie SchemaExport, aber es erstellt nur Migrationen.

0voto

Artem Tikhomirov Punkte 21027

Obwohl SchemaUpdate meinen Bedürfnissen weitgehend entspricht, hat es immer noch mehrere Probleme. Zum Beispiel lehnt es ab, eine neue Beschränkung auf eine vorhandene Datenbankspalte zu setzen, auch wenn es nicht im Konflikt mit vorhandenen Daten stehen wird.

Ich werde versuchen, SchemaUpdate ein wenig zu erweitern oder, falls das scheitert, zu einem der manuell gesteuerten Migrationswerkzeuge zu wechseln (zum Beispiel demjenigen von Rails).

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X