CREATE OR REPLACE PROCEDURE in_out (
p_in IN NUMBER, -- Parameter geht in die Proc rein
p_out OUT NUMBER, -- Paramter wird zurückgegeben
p_in_out IN OUT NUMBER
) -- Parameter geht rein und wieder raus
IS
var1 NUMBER := 10;
BEGIN --p_in :=20; -- geht nicht
var1 := p_in;
p_out := 20;
var1 := p_out;
p_out := p_out + 1;
p_in_out := 20;
var1 := p_in_out;
p_in_out := p_in_out + 1;
EXCEPTION
WHEN OTHERS THEN
dbms_output.put_line(sqlerrm);
END;
/
REM Aufruf
DECLARE
v_out NUMBER;
v_in_out NUMBER:=2;
BEGIN
in_out(1, v_out, v_in_out);
end;
/