oracle中一個數據庫表透過另一個數據表的資料同步最新資料採用dblink的方法:1.首先建立一個dblink,可以訪問遠端資料庫
2.在本地建立一個快照,對映遠端資料表,當遠端資料表有變化時,會反應到快照中.
3.由於快照類似於視圖表,所以在本地為快照建立一個觸發器,當快照有變化時,會觸發相應事件.
4.在觸發器中寫同步資料的程式碼。
以下是觸發器程式碼:
createorreplacetriggerTRI_test_user_AFR
afterinsertorupdateordeleteonsn_test_user
foreachrow
begin
if deleting then
deletefromtest_userwhereid=:old.id;
endif;
if inserting then
insertintotest_user(id,name,age)
values(:new.id,:new.name,:new.age);
if updating then
updatetest_usersetname=:new.name,age=:new.agewhereid=:old.id;
endTRI_test_user_AFR;
oracle中一個數據庫表透過另一個數據表的資料同步最新資料採用dblink的方法:1.首先建立一個dblink,可以訪問遠端資料庫
2.在本地建立一個快照,對映遠端資料表,當遠端資料表有變化時,會反應到快照中.
3.由於快照類似於視圖表,所以在本地為快照建立一個觸發器,當快照有變化時,會觸發相應事件.
4.在觸發器中寫同步資料的程式碼。
以下是觸發器程式碼:
createorreplacetriggerTRI_test_user_AFR
afterinsertorupdateordeleteonsn_test_user
foreachrow
begin
if deleting then
deletefromtest_userwhereid=:old.id;
endif;
if inserting then
insertintotest_user(id,name,age)
values(:new.id,:new.name,:new.age);
endif;
if updating then
updatetest_usersetname=:new.name,age=:new.agewhereid=:old.id;
endif;
endTRI_test_user_AFR;