Skip to main content

Настройка базы данных Oracle для синхронизации

Для подключения синхронизации, требуется создать триггер на основную таблицу, которую нужно отслеживать.

Ниже приведён шаблон PL/SQL кода для создания требуемого триггера.

Параметр Описание Пример
schema_name Название схемы базы данных ORGANIZACIYA
table_name Название таблицы в схеме базы данных ORGANIZACIYA
CREATE OR REPLACE TRIGGER <:schema_name>.<:table_name>_SYNC AFTER DELETE OR INSERT OR UPDATE
ON <:table_name>
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
BEGIN
   IF INSERTING
   THEN
      OTCHET.sync (:NEW.id,
                   '<:schema_name>',
                   '<:table_name>',
                   1);
   ELSIF UPDATING
   THEN
      OTCHET.sync (:OLD.id,
                   '<:schema_name>',
                   '<:table_name>',
                   3);
   ELSIF DELETING
   THEN
      OTCHET.sync (:OLD.id,
                   '<:schema_name>',
                   '<:table_name>',
                   2);
   END IF;
EXCEPTION
   WHEN OTHERS
   THEN
      NULL;
END;
/

При выполнении данного запроса в базе данных, замените переменные вашими значениями.

Если требуется более сложная синхронизация, то можно использовать ваши '<:schema_name>' и '<:table_name>' в других процедурах или триггерах, но primary_key должен быть первичным ключом именно той таблицы, которую описывает данная сущность.