In Oracle is For Loop de gemakkelijkste manier om met Cursor te werken. Het zal de cursor openen, ophalen en vanzelf sluiten. Hieronder staan de voorbeelden om gegevens op te halen van Cursor in Oracle met For Loop.
Voor voorbeelden van loopcursor
1. Cursor zonder parametervoorbeeld
SET SERVEROUTPUT ON; DECLARE CURSOR c_emp IS SELECT * FROM emp; BEGIN FOR cur IN c_emp LOOP DBMS_OUTPUT.put_line ( 'Employee Name: ' || cur.ename || ' Job: ' || cur.job); END LOOP; END; /
Uitvoer
Employee Name: SMITH Job: CLERK Employee Name: ALLEN Job: SALESMAN Employee Name: WARD Job: SALESMAN Employee Name: JONES Job: MANAGER Employee Name: MARTIN Job: SALESMAN Employee Name: BLAKE Job: MANAGER Employee Name: CLARK Job: MANAGER Employee Name: SCOTT Job: ANALYST Employee Name: KING Job: PRESIDENT Employee Name: TURNER Job: SALESMAN Employee Name: ADAMS Job: CLERK Employee Name: JAMES Job: CLERK Employee Name: FORD Job: ANALYST Employee Name: MILLER Job: CLERK PL/SQL procedure successfully completed.
2. Cursor voor lus parametriseren Voorbeeld
SET SERVEROUTPUT ON; DECLARE CURSOR c_emp (p_job emp.job%type) IS SELECT * FROM emp where job = p_job; BEGIN FOR cur IN c_emp ('MANAGER') LOOP DBMS_OUTPUT.put_line ( 'Employee Name: ' || cur.ename || ' Job: ' || cur.job); END LOOP; END; /
Uitvoer
Employee Name: JONES Job: MANAGER Employee Name: BLAKE Job: MANAGER Employee Name: CLARK Job: MANAGER PL/SQL procedure successfully completed.
Zie ook:
- Oracle Bulk Collect-voorbeeld met cursor
- Blijf herhalen in Cursor, zelfs als er een fout is opgetreden
- Gegevens exporteren naar CSV in Oracle