CREATE  TRIGGER  ZYDJB_DEL  
before delete on ZYDJB 
FOR each row
declare
num number;
begin
select count(1) into num from ZYQKCXB where ZYBS=:old.ZYBS;
if num>0 then
  DELETE FROM ZYQKCXB
  WHERE ZYBS=:old.ZYBS;
  DELETE FROM ZYSHSXB
  WHERE ZYBS=:old.ZYBS;
                                          DELETE FROM LJZYCXB
  WHERE ZYBS=:old.ZYBS ;
                                      DELETE FROM ZYDJGXB
  WHERE ZYBS=:old.ZYBS
                                             OR
                                          SCZYBS=:old.ZYBS;
     
 END;

解决方案 »

  1.   

    CREATE or replace TRIGGER  ZYDJB_DEL  
    before delete on ZYDJB 
    FOR each row
    declare
    num number;
    begin
    select count(1) into num from ZYQKCXB where ZYBS=:old.ZYBS;
    if num>0 then
      DELETE FROM ZYQKCXB
      WHERE ZYBS=:old.ZYBS;
      DELETE FROM ZYSHSXB
      WHERE ZYBS=:old.ZYBS;
                                              DELETE FROM LJZYCXB
      WHERE ZYBS=:old.ZYBS ;
                                          DELETE FROM ZYDJGXB
      WHERE ZYBS=:old.ZYBS
                                                 OR
                                              SCZYBS=:old.ZYBS;
         
     END;
      

  2.   

    @@ROWCOUNT>1
    这个条件怎么加呢?