Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Parâmetros OUT do procedimento armazenado do Oracle


Sua pergunta não está totalmente clara. Um parâmetro IN OUT é passado nos dois sentidos, como o próprio nome indica. Isso significa que deve ser passada uma variável, não um literal e você precisa de um bloco de declaração para fazer isso. Por exemplo:
declare
  l_segn number;
begin
  l_segn := 1;
  -- procedure will have received value = 1
  rifatt_segn0_ins(l_segn, 'x', 2, sysdate);
  -- procedure may have changed value of l_segn from 1 to something else
  dbms_output.put_line(l_segn); 
end;