консольные утилиты, чтобы сделать pg_diff -> file.sql ?
pg_dump, например.
Видимо, я немного некорректно написал :) Нужна утилита, которая напишет мне миграцию :) т.е. к примеру alter table TABLE add column COLUMN not null default 1;
У меня есть стойкое убеждение, что если вы можэте написать миграцыю при помощи pg_dump и какого-нибудь sed (awk, perl, python) — то лучшэ (удобнее и надёжнее) писать её именно так. А если вы неможэте написать миграцыю при помощи pg_dump и строковых редакторов — то лучшэ вам не писать миграцый пока.
есть apgdiff, но он не всё берёт
нет, просто у нас ликйбес хранит миграции не так, как привыкли, а разбивает sql-dump по файликам и папкам типа public -папка tables - папка users - файл clients - файл в каждом файле отражается актуальная версия сущности ну и , если файл поменялся - ликбейс его зальёт Проблема вот в чём: Если поменялся файл с функцией - выполнится create or replace - тут всё чётко А если поменяется файл с таблицей ( create table if not exists ) - новое поле не добавится так - придётся писать отдельно alter table add column Вот это и хочется автоматизировать
Обсуждают сегодня