Postgresql使用觸發器實現同步插入兩張表

在有一個陳舊的系統的情況下,如果升級API可以優先使用微服務的形式,將數據庫進行獨立拆分,將原來的數據庫原原本本地固定在舊系統中,然後在獨立的微服務中運行與部署新系統。

如果原有的數據需要在更換結構的前提下在不同的版本的系統下進行共享,那可以使用數據庫的卷影複製等功能。如果兩個數據表的結構不完全一樣,那麼使用觸發器的功能來實現會更加簡單一些。

// 創建觸發器函數
CREATE OR REPLACE FUNCTION "public"."insert_test_funcs"()
  RETURNS "pg_catalog"."trigger" AS $BODY$  
    BEGIN  
        insert into test2 (a,b,c) 
    VALUES (new.a,new.b,new.c);
                RETURN NEW;
    END;  
$BODY$
  LANGUAGE plpgsql VOLATILE
  COST 100

// 在主表上創建觸發器

CREATE TRIGGER "createbh_test_insert_trigger" AFTER INSERT ON "public"."test"
FOR EACH ROW
EXECUTE PROCEDURE "public"."insert_test_funcs"();

————————————————

版權聲明:轉載爲CSDN博主「小石石石石石石」的原創文章,遵循CC 4.0 BY-SA版權協議,轉載請附上原文出處鏈接及本聲明。
原文鏈接:https://blog.csdn.net/weixin_42101813/article/details/106947029

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章