CREATE OR REPLACE PROCEDURE SCOTT.GOOD
AS
TYPE C1 IS REF CURSOR;
B1 SCOTT.EMP%ROWTYPE;
BEGIN
OPEN C1 FOR
SELECT *
FROM SCOTT.EMP;
LOOP
FETCH C1 INTO B1;
EXIT WHEN C1%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(B1.ename);
END LOOP;
CLOSE C1;
END GOOD;
------解决方案--------------------
CREATE OR REPLACE PROCEDURE GOOD AS
TYPE C2 IS REF CURSOR;
B1 tgp_funds%ROWTYPE;
c1 c2;
BEGIN
OPEN C1 FOR
SELECT * FROM scott.emp;
LOOP
FETCH C1
INTO B1;
EXIT WHEN C1%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(B1.emp_no);
END LOOP;
CLOSE C1;
END GOOD;