Oracle_Explicit_Cursor1
  • %NOTFOUND
  • loo --- end loop
Emp table:

Script 1:

DECLARE
CURSOR C_EMP1 IS
SELECT ename,job, sal from emp where job != 'PRESIDENT';
L_ENAME VARCHAR2(20);
L_JOB varchar2(20);
L_SALARY NUMBER(4);
BEGIN
OPEN C_EMP1;
loop
FETCH C_EMP1 INTO L_ENAME, L_JOB, L_SALARY;
DBMS_OUTPUT.PUT_LINE('Employee '||L_ENAME||' '||L_JOB||' draws '||L_SALARY||' per month');
exit when C_EMP1%NOTFOUND;
end loop;
CLOSE C_EMP1;
END;
/

Note duplicated  last row in this query with "loop --%NOTFOUND"

Script 2:

 

 

Compare :

Script : 1 and script  2