PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

Ändern der Tabelle mit dem Befehl Sqitch Rework

Die Überarbeitung dient dazu, idempotent zu machen Änderungen wie CREATE OR REPLACE FUNCTION . Die CREATE TABLE Aussage ist nicht idempotent. Wenn Sie einer Tabelle eine Spalte hinzufügen möchten, schlage ich vor:

  1. Wenn Sie Ihre Datenbank noch nicht freigegeben haben, ändern Sie einfach die CREATE TABLE Anweisung in der ursprünglichen Änderung und sqitch rebase um alle Änderungen rückgängig zu machen und mit der aktualisierten Tabelle erneut bereitzustellen. Dies ist ideal für die Entwicklung.

  2. Andernfalls fügen Sie eine neue Änderung namens $table_$column hinzu oder etwas Ähnliches, und verwenden Sie einen ALTER TABLE -Anweisung, um die neue Spalte hinzuzufügen. Dies ist der Ansatz, den Sie wählen sollten, wenn Sie die Datenbank bereits veröffentlicht haben, obwohl Sie dies auch vor der Veröffentlichung tun können, wenn Sie möchten.