--创建测试表
create table EMP (EMPNO number , ENAME varchar2(32) );
insert into EMP (EMPNO ,ENAME) values (10,'张三');
insert into EMP (EMPNO ,ENAME) values (20,'小马');
insert into EMP (EMPNO ,ENAME) values (30,'小米');
insert into EMP (EMPNO ,ENAME) values (40,'小明');
--创建存储过程
CREATE OR REPLACE PROCEDURE PROC_TEST IS
CURSOR CURSOR_EMP IS
SELECT EMPNO,ENAME FROM EMP;
CUR_EMP_OBJ CURSOR_EMP%ROWTYPE;
BEGIN
---循环的第一种写法
FOR CUR_EMP_OBJ IN CURSOR_EMP LOOP
DBMS_OUTPUT.PUT_LINE('循环的第一种写法-FOR IN:' || CUR_EMP_OBJ.EMPNO || ' ' ||
CUR_EMP_OBJ.ENAME);
END LOOP;
---循环的第二种写法
OPEN CURSOR_EMP;
LOOP
FETCH CURSOR_EMP
INTO CUR_EMP_OBJ;
EXIT WHEN CURSOR_EMP%NOTFOUND;
DBMS_OUTPUT.PUT_LINE(