表—:T_jgk,编号:BH;名称:MC
表二:T_cltcl, 编号:C_bh,名称:C_name
表三:T_Dglj,编号:D_bh,名称:D_name,(表中的名称分为三种情况:分别以BB,BE,BF开头的,修改名称的时候去掉第一个B,再修改)要求:条件为:修改表一中的名称,同时更新表二和表三中的名称,修改条件为判断BH是否相同
              特殊情况:表三中的编号有的以B开头,先的去掉B才能判断编号是否相同(注意:数据库表中不能去掉);
              表三中的名称分为三种情况:分别以BB,BE,BF开头的,修改名称的时候去掉第一个B,再修改

解决方案 »

  1.   

    create trigger my_trig on T_jgk for update
    as
    being
      update T_cltcl set C_name = ... from T_cltcl where C_bh = (select bh from inserted)
      update T_Dglj set D_name = ... from T_cltcl where substring(D_bh,2,len(D_bh)) = (select bh from inserted)
    end
      

  2.   

    create trigger my_trig on T_jgk for update
    as
    being
      update T_cltcl set C_name = ... from T_cltcl where C_bh = (select bh from inserted)
      update T_Dglj set D_name = ... from T_Dglj where substring(D_bh,2,len(D_bh)) = (select bh from inserted)
    end
      

  3.   

    create trigger my_trig on T_jgk for update
    as
    begin
      update T_cltcl set C_name = ... from T_cltcl where C_bh = (select bh from inserted)
      update T_Dglj set D_name = ... from T_Dglj where substring(D_bh,2,len(D_bh)) = (select bh from inserted)
    end