1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
| create or replace procedure generer(photo VARCHAR2 default NULL,code VARCHAR2 default NULL,t VARCHAR2 default NULL,
Key VARCHAR2 default NULL,date_modif VARCHAR2 default NULL,diffusion VARCHAR2 default NULL,service VARCHAR2 default NULL,user VARCHAR2 default NULL,pass VARCHAR2 default NULL)
IS
trigger_diffusion VARCHAR(300) ;
diff BOOLEAN ;
diffusion VARCHAR(20);
service VARCHAR(20);
begin
trigger_diffusion :='CREATE OR REPLACE TRIGGER trigger_diffusion BEFORE UPDATE OR INSERT ON PERSONNES FOR EACH ROW DECLARE diff BOOLEAN ;
diff:=true ;
BEGIN ';
trigger_diffusion:= trigger_diffusion||' if ( :new.diffphoto = 1 ) then diff:=true else diff:=false; end if;end if ; update '||t||'@'||service||' set '||diffusion||'=:'||diff||' where substr('||key||',1,(length('||key||')-1)= :new.id_personne';
dbms_output.put_line(trigger_diffusion) ;
end; |