Advertisement
Maks140888

Untitled

Jun 6th, 2022
1,155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. create table temp_obj(
  2.     id_operation numeric
  3. );
  4.  
  5. CREATE OR REPLACE FUNCTION process_del_dept() RETURNS TRIGGER AS $new_dept$
  6.     BEGIN
  7.         if(TG_OP = 'DELETE') THEN
  8.             DELETE from new_Emp where new_emp.deptno = OLD.deptno;
  9.             insert into temp_obj(id_operation) values (OLD.deptno);
  10.         END IF;
  11.         RETURN NULL;
  12.     END;
  13. $new_dept$ LANGUAGE plpgsql;
  14.  
  15. create trigger del_dept
  16. BEFORE DELETE ON new_dept
  17.     FOR EACH ROW EXECUTE FUNCTION process_del_dept();
  18.  
  19. CREATE OR REPLACE FUNCTION process_del_dept_after() RETURNS TRIGGER AS $new_dept$
  20.     BEGIN
  21.         if(TG_OP = 'DELETE') THEN
  22.             DELETE from new_Dept where new_dept.deptno = (select max(id_operation) from temp_obj);
  23.             delete from temp_obj;
  24.         END IF;
  25.         RETURN NULL;
  26.     END;
  27. $new_dept$ LANGUAGE plpgsql;
  28.  
  29.  
  30. create or replace trigger del_dept_after
  31. after DELETE ON new_dept
  32.     FOR EACH ROW EXECUTE FUNCTION process_del_dept_after();
  33.  
  34.  
  35.  
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement