Generátor migrací databáze — rozdíl schémat na SQL up / down
Generátor migrací databáze
Vložte aktuální schéma vlevo a cílové schéma vpravo — buď jako DDL CREATE TABLE, nebo jako JSON schématu z návrháře ERD — a poté vygenerujte dopředný skript (up) a odpovídající vracecí skript (down): nové a odstraněné tabulky, přidané, odstraněné a změněné sloupce a změny cizích klíčů, se správným kvótováním pro MySQL, PostgreSQL, SQL Server, SQLite, Oracle nebo standardní SQL. Nic se nenahrává; rozdíl se počítá ve vašem prohlížeči.
1 — Před (aktuální schéma)
2 — Po (cílové schéma)
3 — Vygenerovat migraci
Příkazy jsou seskupeny podle tabulky; výstup před spuštěním zkontrolujte.
Rozdíl zatím nebyl vygenerován.
Rozsah: jde o strukturální rozdíl tabulek, sloupců, primárních klíčů, nulovatelnosti, výchozích hodnot a cizích klíčů. Indexy, triggery, pohledy a doplňování dat jsou mimo rozsah a je třeba je doplnit ručně. SQLite nedokáže sloupec změnit na místě, takže tyto změny se zapíší jako komentář s žádostí o znovuvytvoření tabulky.
Co je migrace databáze?
Migrace je verzovaný skript, který mění schéma databáze: vytvoří tuto tabulku, přidá ten sloupec, odstraní index. Týmy migrace aplikují v pořadí, aby každé prostředí — vývoj, testování, produkce — procházelo stejnou cestu od verze k verzi, místo aby se ručně upravovalo do tvarů, které už neodpovídají kódu. Každá migrace se obvykle dodává ve dvou polovinách: up změnu aplikuje, down ji vrací zpět, takže špatné vydání lze vrátit stejným způsobem, jakým bylo nasazeno.
Migrace, které odstraňují tabulky nebo sloupce, jsou destruktivní — skript down nedokáže smazaná data obnovit. Před spuštěním migrace, která cokoli odstraňuje, zálohujte (nebo alespoň exportujte dotčené tabulky).