DECLARE
CURSOR cur(no NUMBER) IS
SELECT ename FROM emp WHERE deptno = no;
v_name emp.ename%TYPE;
--集合
TYPE name_table_type IS TABLE OF emp.ename%TYPE INDEX BY BINARY_INTEGER;
name_table name_table_type;
--游标变量
TYPE emp_cursor_type IS REF CURSOR;
emp_cursor emp_cursor_type;
BEGIN
--for循环
FOR v_record IN cur(10) LOOP
dbms_output.put_line('--FOR ' || v_record.ename);
END LOOP;
OPEN cur(10); --参数游标
--普通循环
LOOP
FETCH cur
INTO v_name;
EXIT WHEN cur%NOTFOUND;
dbms_output.put_line(v_name);
END LOOP;
----BULK COLLECT
FETCH cur BULK COLLECT
INTO name_table;
FOR i IN 1 .. name_table.count LOOP
dbms_output.put_line('--2 ' || name_table(i));
dbms_output.put_line('--2 ' || cur%ROWCOUNT);
END LOOP;
END;