首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

二个数据库结构一样的表数据同步,用触发器做的,记录数不一样

2013-01-23 
2个数据库结构一样的表数据同步,用触发器做的,记录数不一样记录数要差几条呢 触发器的bug吗?触发器生效一

2个数据库结构一样的表数据同步,用触发器做的,记录数不一样
记录数要差几条呢 触发器的bug吗?   触发器生效一天之后发现两张表记录数是一样的哦

触发器是这种模式

create or replace trigger mob.record_content_modify
after insert or update or delete
ON mob.record_content FOR EACH ROW

BEGIN
if  INSERTING then
  INSERT INTO nrecord_content@wydk //wydk 为 dblink
  (
  COL1        ,
  COL2       ,
  COL3        ,
 ................
  COL25    ,
  COL40 )
  VALUES
  (:new.COL1        ,
  :new.COL2       ,
  :new.COL3        ,
................
  :new.COL25    ,
  :new.COL40
  ) ;

elsif updating then
  update record_content@wydk
  set
  COL1  = :new.COL1      ,
  COL2  = :new.COL2       ,
  COL3   = :new.COL3       ,
  COL25   = :new.COL25    ,
  COL40 = :new.COL40
  where ID = :old.ID;
elsif  DELETING then
  delete from record_content@wydk
  where ID = :old.ID;

end if ;
  END;

WYHIS这个dblink是有权限  增删查改wydk库record_content表权限的  

分析道这 水平有限 弄不起走了 各位高手帮我瞧瞧 谢谢了
[解决办法]
建议使用物化视图 + DB LINK
[解决办法]
建议不要用触发器,这个东西很难控制,总是莫名其妙的出一些问题,在我们的项目中都不用触发器了。
[解决办法]

引用:
定时倒数据嘛?



物化视图:  Materialized view
本身就是一个实体化的是图标,占用数据库的存储空间,可以是远程数据库的本地备份,也可以是基础表的查询统计汇总。

使用物化视图+Dblink的方式来进行数据同步,这个方式比较可靠,而且可以选择是 定时同步或者给予ROWID或者主键的变化进行同步,比较可靠,灵活.

相关使用google:基于远程数据库表,建立本地数据库的物化视图

热点排行