前提:本地数据库存在一张:A_TEST表,服务器数据库有两张表:A_TEST、A_TEST_HIST(历史表),需要将本地数据的更改、新增、删除同步到服务器数据库的两张表中。
方法一:通过触发器同步。
1、
用如下命令建立DB Link:
create database link MYTEST connect to XXXX identified by 'XXXX' using 'IP/Service Name(我的是:orcl)';
注意:需要DB支持Advanced replication功能,是否支持,可用如下SQL查看:
select * from v$option where PARAMETER='Advanced replication';
如果是返回True就表示支持。
2、建立触发器:sendToCeShiTest
create or replace trigger sendToCeShiTest
after insert or update or delete
on A_TEST
for each row
declare cunt integer:=0;
--PRAGMA AUTONOMOUS_TRANSACTION; -- 自治事务解决 触发器 导致" ORA-04091 : 触发器 / 函数 不能读 它"不可行的验证
begin
case
when updating then
SELECT count(*) INTO cunt FROM A_TEST