我想知道是否可以在FDW表上创建触发器。
我的目标是:
每当在外部表中发生什么事情时,我就会在本地表(本地服务器)中触发一个事件。
我使用FDW是因为在源表(远程表)中没有写权限,所以使用FDW功能。
enterprises表是外来的。
我试过这个功能:

CREATE OR REPLACE FUNCTION INSERT_ENTERPRISE() RETURNS TRIGGER AS $INSERT_ENTERPRISE$
    BEGIN
      INSERT INTO TEST_ENTERPRISES VALUES(NEW.ENTERPRISE_ID);
    END;
$INSERT_ENTERPRISE$ LANGUAGE PLPGSQL;

触发器为:
CREATE TRIGGER TG_INSERT_ENTERPRISE
    BEFORE INSERT ON ENTERPRISES
    FOR EACH ROW EXECUTE PROCEDURE INSERT_ENTERPRISE();

在远程表中发生了许多插入,但在本地表中没有人。

最佳答案

由于PostgreSQL版本9.4,您可以在外部表上定义触发器。

关于postgresql - Postgres触发FDW表,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39260883/

10-16 16:56