CREATE OR REPLACE TRIGGER "TG_T_USERTABLE_DEL" BEFORE 
    DELETE 
    ON "T_USERTABLE" 
    FOR EACH ROW 
BEGIN
   DELETE FROM T_ORG_USER WHERE userid=:old.userid;
   DELETE FROM T_ROLE_USER WHERE userid=:old.userid;
   DELETE FROM T_USER_PURVIEW WHERE userid=:old.userid;
   DELETE FROM T_USER_fun_object WHERE userid=:old.userid;
END;
/

解决方案 »

  1.   

    CREATE OR REPLACE TRIGGER  "TG_T_USERTABLE_DEL" on "T_USERTABLE" 
    for delete 
    as 
    declare @userid varchar(20),
    if Exists(select * from deleted)   
    Begin
       DECLARE TempCursor CURSOR FOR  select userid from deleted
       Open TempCursor
       FETCH NEXT FROM TempCursor INTO @userid
       WHILE @@FETCH_STATUS = 0
       Begin
           DELETE FROM T_ORG_USER WHERE userid=@userid
           DELETE FROM T_ROLE_USER WHERE userid=@userid
           DELETE FROM T_USER_PURVIEW WHERE userid=@userid
           DELETE FROM T_USER_fun_object WHERE userid=@userid
           FETCH NEXT FROM TempCursor INTO @userid
       End
       Close TempCursor
       DEALLOCATE TempCursor
    end;