В Oracle For Loop е най-лесният начин за работа с Cursor. Той ще отвори курсора, ще извлече и ще се затвори сам. По-долу са дадени примерите за това как да извлечете данни от Cursor в Oracle с помощта на For Loop.
За примери за курсор на цикъл
1. Пример за курсор без параметър
ЗАДАДЕТЕ SERVEROUTPUT ON;DECLARECURSOR c_empISSELECT * FROM emp;BEGINFOR cur IN c_empLOOPDBMS_OUTPUT.put_line ('Име на служител:' || cur.ename || ' Работа:' || cur.job);END LOOP;END;/предварително>Изход
Име на служител:SMITH Работа:CLERKEimployee Name:ALLEN Работа:SALESMANEmployee Name:WARD Работа:SALESMANEmployee Name:JONES Работа:MANAGEREmployee Name:MARTIN Работа:SALESMANEmployee Name:BLAKEREM:Jom:BLAKERE:Joem:Joem:Joem:Joem:Joem::ANALYSTEmployee Name:KING Работа:PRESIDENTEmployee Name:TURNER Работа:SALESMANEmployee Name:ADAMS Работа:CLERKE Employee Name:JAMES Работа:CLERKE Employee Name:FORD Работа:ANALYSTEmployee Name:ANALYSTEmployee Name:ANALYSTEmployee Name:CILLER MILLER Job.2. Параметризиране на курсора за пример за цикъл
ЗАДАДЕТЕ SERVEROUTPUT ON;DECLARECURSOR c_emp (p_job emp.job%type)ISSELECT * FROM emp където job =p_job;BEGINFOR cur IN c_emp ('MANAGER')LOOPDBMS_OUTPUT.put_line ('Име на служител:' || cur.ename | | ' Работа:' || cur.job);END LOOP;END;/Изход
Име на служител:JONES Работа:MANAGERE Име на служител:BLAKE Работа:MANAGERE Име на служител:CLARK Работа:MANAGERPL/SQL процедурата е завършена успешно.Вижте също:
- Пример за групово събиране на Oracle с помощта на курсора
- Продължавайте да вървите в курсора, дори ако е възникнала грешка
- Експортиране на данни в CSV в Oracle