D401表D401_14 NUMBER(20) N 个人标示ID(个人档案号)
D401_06 VARCHAR2(2) Y 优抚类型:S101_25
D401_10 CHAR(1) Y '0' 当前状态(0-正常,1-注销,3-删除)D401_YF表
D401_14 NUMBER(20) N 个人标识
D401_06 VARCHAR2(2) Y 优抚类型
D401_10 CHAR(1) Y 当前状态(0-正常,1-注销,3-禁用)当 D401中的D401_10字段发生变化时,同时也更新要更新 D401_YF 表中的 D401_10字段的值,这该怎么做,前提条件,D401_YF 表中不一定存在 D401表中的记录

解决方案 »

  1.   


    create or replace trigger tri_D401
      before UPDATE on D401
      for each row
    begin
       
       if :new.D401_10<>:old.D401_10 then
              update D401_YF set D401_10=:new.D401_10 where 条件
       end if;
    end tri_D401;
    手写
      

  2.   

    错了错了,  更新了 D401_10字段之后,在去更新D401_YF 表中的 D401_10字段
      

  3.   

    楼主说的什么意思?二楼的触发器应当能满足你的需求,如果实在纠结于D401和D401_YF两个表的更新前后问题,可以把before换成after