Выполнение триггера для сторонней таблицы в postgresql

У меня есть две базы данных db1 и db2.db2 имеет внешнюю таблицу, скажем, tableA, схема которой была импортирована из db1. Триггер запускается в таблице A в db1 для каждого обновления строки. Теперь, используя postgres_fdw, я могу получить записи из db2, но не могу обновить ни одну запись в таблице A из-за этой функции триггера. Обновление работает нормально, если я отключаю триггер. Мне нужен этот триггер для журнала аудита.

Пожалуйста, предложите мне подходящее предложение для решения проблемы. Я использую postgres 9.6.

1 ответ

Убедитесь, что пользователь, устанавливающий ссылку, имеет доступ к таблицам аудита.

Вы также можете добавить требуемую схему в путь поиска триггерной функции:

CREATE OR REPLACE FUNCTION abc.mytrigger() RETURNS trigger AS
$BODY$BEGIN
 [...] -- do something in the xyz schema
  RETURN NEW;
END;$BODY$ 
LANGUAGE plpgsql 
SET search_path = xyz;
Другие вопросы по тегам