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

O cursor em loop gera um erro de que o cursor não está definido


O cursor pode ser referenciado em um bloco PL/SQL da seguinte forma:
set serveroutput on    
DECLARE
  c_curs    SYS_REFCURSOR;
  v_id      NUMBER;
BEGIN

  pck_prov.get_value_type_list (1, c_curs); --> procedure called here

  LOOP 
    FETCH c_curs
    INTO  v_id;
    EXIT WHEN c_curs%NOTFOUND;
    DBMS_OUTPUT.PUT_LINE(v_id);
  END LOOP;
  CLOSE c_curs;
END;
/