记录数要差几条呢 触发器的bug吗?   触发器生效一天之后发现两张表记录数是一样的哦触发器是这种模式create or replace trigger mob.record_content_modify
after insert or update or delete
ON mob.record_content FOR EACH ROWBEGIN
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表权限的  分析道这 水平有限 弄不起走了 各位高手帮我瞧瞧 谢谢了

解决方案 »

  1.   

    minus两表看看,差的记录的数据是怎样的,是否符合insert触发器条件?表的插入繁忙程度如何?触发器里没有异常处理,那么应用程序是否处理异常了?
      

  2.   

    我也遇到了和楼主一样的需求。建了和用户数据库一样的表,然后把用户表中的数据同步过来,一开始也是考虑到用触发器,不过就怕数据量大,触发器的效果不理想,求各位大仙指导指导!!!用的是oracle数据库。
      

  3.   

    建议使用物化视图 + DB LINK
      

  4.   

    物化视图:  Materialized view
    本身就是一个实体化的是图标,占用数据库的存储空间,可以是远程数据库的本地备份,也可以是基础表的查询统计汇总。使用物化视图+Dblink的方式来进行数据同步,这个方式比较可靠,而且可以选择是 定时同步或者给予ROWID或者主键的变化进行同步,比较可靠,灵活.相关使用google:基于远程数据库表,建立本地数据库的物化视图