В Postgresql (и Sybase ADS) я делаю свою собственную основанную на триггерах репликацию с несколькими хозяевами на обеих платформах, которая должна динамически обрабатывать различные составные ключи и иногда без PK в определенных таблицах.Чтобы упростить процесс, я пытаюсь автоматически сгенерировать INSERT / UPDATE / DELETE, где пользователь может выбрать столбцы, которые он хочет скопировать, перечислив имена столбцов в ячейке, разделенной точкой с запятой.
- "SELECT Address, city, us_state, zipcode FROM public.place;
" будет таблица, которая должна быть реплицирована.Метатабельно для публикации / подписки будет иметь ячейку, содержащую «Address;city;us_state;zipcode
».-Я использую триггеры вставки / обновления / удаления для захвата новых данных строки и хочу использовать столбцы для динамического создания оператора типа «insert into place (Address,city,us_state,zipcode) VALUES (NEW.Address,NEW.city,NEW.us_state,NEW.zipcode);
», который можно прочитать и выполнить по назначению через скрипт.Я сделаю то же действие для UPDATE и DELETE, используя префикс OLD в сгенерированных инструкциях UPDATE и DELETE, где это необходимо.
Я не ищу кого-то, кто мог бы выполнить кучу работы, но чтобы дать представление о любомзадействованные функции, логика и утверждения.Спасибо за любые идеи или советы.