Пишем автомигратор на Go: как узнать схему PostgreSQL
Когда говорят «генератор миграций», обычно в голове сразу появляется что-то вроде: Генератор миграций начинается не с CREATE TABLE , а с вопроса: как представить текущую схему базы в коде? В первой статье серии разбираем PostgreSQL-first introspector: читаем таблицы, колонки, constraints и индексы, где хватает information_schema , а где приходится идти в pg_catalog , и собираем детерминированный snapshot схемы. Миграции пока не генерируем — строим фундамент, из которого потом можно будет сделать diff и получить DDL. Статья будет полезна тем, кто пишет инструменты вокруг баз данных, интересуется PostgreSQL internals или хочет понять, почему автомигратор — это не просто набор ALTER TABLE .
https://habr.com/ru/articles/1045496/
#Go #PostgreSQL #миграции #автомигратор #introspection #information_schema #pg_catalog #DDL #schema_diff #qrafter
