2016-06-22 2 views
0

У меня вопрос о возможностях Bucardo в Postgre SQL. Bucardo ставит таблицы синхронизации между несколькими базами данных. Представьте, что у нас есть таблицы заказов в DB1 и DB2.Логическая логика репликации Bucardo

create table orders(order_id integer primary key, item_id integer, quantity integer); 

И мы вносим изменения в таблицу заказов в DB1.

insert into orders(item_id,quantity) values(1,235); 

Затем Bucardo реплицирует все эти изменения в таблицу ордеров в DB2. Но помимо этой синхронизации я хочу Bucardo изменить таблицу Шток в DB2

create table stock(item_id integer primary key, name varchar(50), quantity integer); 

Просто, чтобы уменьшить количество поля фондовой таблицы в DB2 значением 235 (значение вводится в количестве поле таблицы заказов в DB1) для записи с item_id = 1. Можно ли настроить Bucardo таким образом? И каков наилучший способ реализовать эту функциональность?

ответ

0

Этого будет трудно достичь, поскольку bucardo не реплицируется на основе SQL-запросов. Однако вы можете использовать хранимые процедуры на первичной основе, которая является DB1, а также реплицировать эту таблицу.

Смежные вопросы