Oracle
 sql >> Base de Dados >  >> RDS >> Oracle

Como buscar dados do cursor no Oracle usando For Loop


No Oracle, o For Loop é a maneira mais fácil de trabalhar com o Cursor. Ele irá abrir o cursor, buscar e fechar sozinho. Abaixo estão os exemplos de como buscar dados do Cursor no Oracle usando For Loop.

Para exemplos de cursor de loop

1. Cursor sem Exemplo de Parâmetro

SET SERVEROUTPUT ON;DECLARECURSOR c_empISSELECT * FROM emp;BEGINFOR cur IN c_empLOOPDBMS_OUTPUT.put_line ('Nome do funcionário:' || cur.ename || ' Job:' || cur.job);END LOOP;END;/ 

Saída

Nome do funcionário:SMITH Cargo:CLERKENome do funcionário:ALLEN Cargo:SALESMANEmployee Nome:WARD Cargo:SALESMANEmployee Nome:JONES Cargo:MANAGERE Nome do funcionário:MARTIN Cargo:SALESMANEmployee Nome:BLAKE Cargo:MANAGERE Nome do funcionário:CLARK Cargo:MANAGERE Nome do funcionário:SCOTT Cargo :ANALYSTEmployee Nome:KING Cargo:PRESIDENTEmployee Nome:TURNER Cargo:SALESMANEmployee Nome:ADAMS Cargo:CLERKEmployee Nome:JAMES Cargo:CLERKEmployee Nome:FORD Cargo:ANALYSTEmployee Nome:MILLER Job:CLERKPL/SQL procedure concluída com sucesso.

2. Cursor parametrizar para exemplo de loop

SET SERVEROUTPUT ON;DECLARECURSOR c_emp (p_job emp.job%type)ISSELECT * FROM emp onde job =p_job;BEGINFOR cur IN c_emp ('MANAGER')LOOPDBMS_OUTPUT.put_line ('Employee Name:' || cur.ename | | ' Trabalho:' || cur.job);END LOOP;END;/

Saída

Nome do funcionário:JONES Cargo:MANAGEREmployee Nome:BLAKE Cargo:MANAGEREmployee Nome:CLARK Cargo:Procedimento MANAGERPL/SQL concluído com êxito.

Veja também:

  1. Exemplo de coleta em massa do Oracle usando o cursor
  2. Mantenha o loop no cursor, mesmo que ocorra um erro
  3. Exportar dados para CSV no Oracle