insert
CREATE OR REPLACE FUNCTION sync_db() RETURNS TRIGGER AS $body$
BEGIN
PERFORM dblink_connect('dblinktest','host=192.168.20.66 dbname=sync-dst user=postgres password=postgres');
PERFORM dblink_exec('dblinktest','INSERT INTO "public"."user"("name") VALUES ('''|| NEW.name ||''');');
PERFORM dblink_disconnect('dblinktest');
RETURN NEW;
END;
$body$ LANGUAGE plpgsql;
CREATE TRIGGER sync_trigger AFTER INSERT ON public.user FOR EACH ROW EXECUTE PROCEDURE sync_db();
INSERT INTO "public"."user"("id", "name") VALUES (8, '范冰冰');
update
CREATE OR REPLACE FUNCTION update_src2dst() RETURNS TRIGGER AS $$
BEGIN
PERFORM dblink_connect('dblinktest','host=192.168.20.66 dbname=sync-dst user=postgres password=postgres');
PERFORM dblink_exec('dblinktest','UPDATE "public"."user" SET "name" = '''|| NEW.name ||''' WHERE "id" = '|| NEW.id ||';');
PERFORM dblink_disconnect('dblinktest');
RETURN NEW;
END;
$$ LANGUAGE plpgsql;
CREATE TRIGGER update_src2dst_trigger AFTER UPDATE ON public.user FOR EACH ROW EXECUTE PROCEDURE update_src2dst();
UPDATE "public"."user" SET "name" = '王力宏' WHERE "id" = 9;
没有帐号? 立即注册