Frage

Im Auswertung liquibase für ein Projekt heute starten.

Hat jemand verwendet es Verfahren zu schaffen, Funktionen, grundsätzlich alle der plsql Sachen?

Wenn nicht, ist es möglich, eingebettete SQL-Code in den XML-Dateien zu schreiben?

Vielen Dank im Voraus.

War es hilfreich?

Lösung

Es gibt einen eingebauten in createProcedure Tag in liquibase für die Verfahren der Verwaltung . Der beste Ansatz ist in der Regel die oder Tags mit runOnChange zu kombinieren, so Liquibase Ihrer Prozedur aktualisieren, wenn und nur dann, wenn Sie die Definition aktualisieren. Auf diese Weise kann diffs zwischen Changelog XML-Dateien im Laufe der Zeit tun und sehen, wie das Verfahren geändert hat.

Mit dem SQLFILE Tag-Datei verweisen pro gespeichertem-proc auch ist populär, oder, wie Sie gesagt haben, können Sie die sql -Tag verwenden, um Inline benutzerdefinierte sQL.

Andere Tipps

Ich habe festgestellt Probleme mit der Verwendung den SQL-Tag für gespeicherte Prozeduren versuchen, Trigger und Funktionen, aber in meinem Fall waren diese beweisbar Probleme mit den MySQL JDBC-Treiber, und selbst nicht Liquibase. Die Praxis, die ich entschieden haben, in ist die SQLFILE Refactoring zu verwenden, wie Nathan schon sagt, dann als Changelog die SP / Trigger / Funktionscode im selben Projekt zu steuern, zusammen mit ihm im Quellcode System versioniert. Auf diese Weise können Sie den SP / was auch immer Code verwalten wie es wirklich Quellcode war.

runOnChange Einstellung = "true" in der Changeset enthält die SQLFILE Refactoring wesentlich ist. Es ist dieser Schalter (danke, Nathan), die Kontrolle des Verfahrensecht-Source-Datenbank-Code ermöglicht.

Während ich nicht liquibase für gespeicherte Prozeduren verwendet habe, ich habe einige Erfahrung für Liquibase allgemeineren Operationen.

Es ist möglich, benutzerdefinierte SQL zu schreiben, entweder in der XML-Datei eingebettet oder aus einer externen Datei verwiesen wird.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top