Как контролировать версии таблиц PostgreSQL?

Бэкенд: Python 3.11 и Django 5.0.6
. База данных: PostgreSQL 15

Наше приложение работает с отчетами из базы данных. Мы не храним SQL-запросы к отчетам в кодовой базе; вместо этого мы храним их в таблицах БД. Однако разработчики время от времени изменяют SQL-запросы. Как мы можем отслеживать такие изменения в базе данных, аналогично использованию Git? Например, я хочу увидеть изменения запросов, внесенные в базу данных год назад. Как я могу это сделать? Есть ли у кого-нибудь какой-нибудь подход для этого?

Я пытался настроить Liquibase, но у него нет поддержки/документации для приложения на Python + Django.

В настоящее время мы создаем репозиторий для базы данных, вручную генерируем операторы вставки из таблицы и помещаем их в репозиторий. Но это очень трудоемкая процедура. Некоторые подходы, которые могут сработать, включают использование триггеров или журналов PostgreSQL. Есть только некоторые конкретные статические таблицы, которые я хочу отслеживать, потому что в некоторых таблицах данные исчисляются миллионами. Если возможно, мне нужна реализация, похожая на инструмент контроля версий, например Git. Есть ли у кого-нибудь лучший подход к решению этой проблемы?

Вернуться на верх