plsql中两个不同数据库之间 数据表进行数据同步

如:A数据库中表A增加一条数据,想使B数据库中相同的表A也增加一条相同的数据,进行数据同步操作

第一步:在A数据库中建立database links

   create database link (任意名XXX)connect to B库用户名  identified by B库密码  using 'B库地址';

第二步:创建A库A表触发器

CREATE OR REPLACE TRIGGER  XX_trigger--(触发器名称,任意)

AFTER INSERT --指定触发时机为新增,可以是after也可以是before

   OR UPDATE OR DELETE   --增删改操作

   ON 表A--表名

   FOR EACH ROW   --说明创建的是行级触发器

BEGIN

  CASE

 --将新增的数据插入到表A的临时trigger表中。

     WHEN inserting THEN  INSERT INTO 表A@XXX (表A所有字段,a,b,c,d,....)--增加操作,主要XXX名为第一步创建的名称

VALUES(:new.a,:new.b,new.c,new.d...);--对应的字段

 WHEN updating THEN

  --将修改的数据插入到表A的临时trigger表中。

update 表A@XXX set ID = :new.ID,a= :new.a,b=:new.b,..... where ID = :new.ID

WHEN deleting THEN
  --将删除的数据同步到表A的临时trigger表中。
  delete 表A@XXX where  ID = :old.ID;
     END CASE;

END;

第三步

将第二步编辑的触发器在A库执行一次,完成!

(检查触发器是否创建成功,可以ctrl+点击触发器名,若无报错,则完成无误!)

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值