Мы реализуем Новую систему с помощью Java/Spring/быть в спящем режиме на PostgreSQL. Эта система должна сделать копию Каждой Записи, как только модификация/удаление сделана на записи (записях) в Таблицах (таблицах). Позже, Контрольная Таблица (таблицы) будет запрошена Отчетами отобразить данные пользователям.
Я планировал реализовать эту опцию аудита/управления версиями при наличии триггера на таблице (таблицах), которая сделает копию измененной строки (удаленная строка) "К" ТАБЛИЦЕ под названием ENTITY_VERSIONS, который имел бы приблизительно 20 столбцов названными col1, col2, col3, col4, и т.д. который сохранит столбцы из приведенной выше таблицы; Однако проблема состоит в том что, если существует больше чем 1 Таблица, которая будет имеющей версию и таблица ONLY 1 TARGET (ENTITY_VERSIONS) для хранения версий всех таблиц, как я разрабатываю таблицу TARGET?
ИЛИ это лучше, что будет КОПИЯ Таблицы ВЕРСИИ для каждой Таблицы, которой нужно управление версиями?
Это будет премия, если некоторые указатели к Триггерам PostgreSQL (и связанная Хранимая процедура) код для реализации аудита/управления версиями могут быть совместно использованы.
P.S.: Я посмотрел на Предложения для реализации контрольных таблиц в SQL Server? и отчасти как ответ кроме я НЕ знал бы, каковы тип OldValue и NewValue должны быть?
P.P.S: Если использование Таблиц, которое УДАЛЯЕТ SOFT (фантом удаляет) вместо ТВЕРДОГО удаляет, какой-либо Ваш совет изменяется?
Я хотел бы иметь копию каждой таблицы для хранения версий этой таблицы, которые вы хотите сохранить. Это похоже на кошмар - поддерживать и использовать глобальную таблицу управления версиями.
Эта ссылка в документации Postgres показывает некоторые примеры триггеров аудита в Postgres.