Generator voor databasemigraties

Plak het huidige schema links en het doelschema rechts — ofwel als CREATE TABLE-DDL, ofwel als schema-JSON uit de ERD-ontwerper — en genereer daarna een voorwaartse (up) script en het bijbehorende terugdraai- (down) script: nieuwe en verwijderde tabellen, toegevoegde, verwijderde en gewijzigde kolommen, en wijzigingen in vreemde sleutels, geciteerd voor MySQL, PostgreSQL, SQL Server, SQLite, Oracle of standaard SQL. Er wordt niets geüpload; het verschil wordt in uw browser berekend.
1 — Voor (huidig schema)
2 — Na (doelschema)
3 — Migratie genereren
Statements worden per tabel gegroepeerd; controleer de uitvoer voordat u die uitvoert.
Nog geen verschil gegenereerd.
Scope: dit is een structureel verschil van tabellen, kolommen, primaire sleutels, nullability, standaardwaarden en vreemde sleutels. Indexen, triggers, views en data-aanvullingen vallen buiten de scope en moeten met de hand worden toegevoegd. SQLite kan een kolom niet ter plaatse wijzigen, dus die wijzigingen worden als commentaar uitgevoerd met het verzoek de tabel opnieuw aan te maken.
Wat is een databasemigratie?

Een migratie is een geversioneerd script dat een databaseschema wijzigt: maak deze tabel, voeg die kolom toe, verwijder een index. Teams passen migraties in volgorde toe zodat elke omgeving — ontwikkel, staging, productie — dezelfde weg van versie naar versie aflegt, in plaats van met de hand te worden aangepast tot vormen die niet meer bij de code passen. Elke migratie bestaat normaal uit twee helften: up past de wijziging toe, down draait haar terug, zodat een slechte release op dezelfde manier kan worden teruggedraaid als waarop hij is ingevoerd.

Migraties die tabellen of kolommen verwijderen zijn destructief — het down-script kan verwijderde gegevens niet terughalen. Maak een back-up (of exporteer ten minste de betrokken tabellen) voordat u een migratie uitvoert die iets verwijdert.