Настройка базы данных 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
DECLARE
entity_id NUMBER := <:entity_id>;
BEGIN
IF INSERTING
THEN
OTCHET.sync(:NEW.id, entity_id,'<:schema_name>', '<:table_name>', 1);
ELSIF UPDATING
THEN
OTCHET.sync(:OLD.id, entity_id,'<:schema_name>', '<:table_name>', 3);
ELSIF DELETING
THEN
OTCHET.sync(:OLD.id, entity_id,'<:schema_name>', '<:table_name>', 2);
END IF;
EXCEPTION
WHEN OTHERS
THEN
NULL;
END;
/
При выполнении данного запроса в базе данных, замените переменные вашими значениями.
Если требуется более сложная синхронизация, то можно использовать вашу ИД Сущности в других процедурах или триггерах, но primary_key должен быть первичным ключом именно той таблицы, которую описывает данная сущность.