Вы используете типы курсора ref для объявления переменных курсора.Затем вы можете извлечь из этих переменных курсора, как если бы вы указали явный курсор.В обоих случаях вы можете и обычно загружать записи.
С помощью явного курсора вы можете объявить запись на основе курсора.При использовании сильного типа курсора ref я объявил бы запись, основанную на том же типе, который использовался для объявления курсора ref.
Вот несколько примеров:
DECLARE
TYPE employee_rt IS RECORD
(
employee_id employees.employee_id%TYPE,
salary employees.salary%TYPE
);
TYPE strong_rc IS REF CURSOR
RETURN employee_rt;
strong_rec employee_rt;
CURSOR twocols_cur
IS
SELECT employee_id, salary FROM employees;
rec_from_explicit_cur twocols_cur%ROWTYPE;
BEGIN
OPEN strong_rc FOR SELECT employee_id, salary FROM employees;
FETCH strong_rc INTO strong_rec;
CLOSE strong_rc;
OPEN twocols_cur;
FETCH twocols_cur INTO rec_from_explicit_cur;
CLOSE twocols_cur;
END;
/