Di Oracle, For Loop adalah cara termudah untuk bekerja dengan Cursor. Ini akan membuka kursor, mengambil dan menutup dengan sendirinya. Di bawah ini adalah contoh cara mengambil data dari Cursor di Oracle menggunakan For Loop.
Untuk Contoh Kursor Loop
1. Contoh Kursor tanpa Parameter
SET SERVEROUTPUT ON;DECLARECURSOR c_empISSELECT * FROM emp;BEGINUNTUK skr IN c_empLOOPDBMS_OUTPUT.put_line ('Nama Karyawan:' || cur.ename || ' Pekerjaan:' || skr.pekerjaan);END LOOP;END;/Keluaran
Nama Karyawan:SMITH Pekerjaan:CLERKNama Karyawan:ALLEN Pekerjaan:SALESMANNama Karyawan:WARD Pekerjaan:SALESMANNama Karyawan:JONES Pekerjaan:MANAGERENama Karyawan:MARTIN Pekerjaan:SALESMANNama Karyawan:BLAKE Pekerjaan:MANAGERENama Karyawan:MANAGERENama Karyawan:CLARK :ANALYSTENama Karyawan:KING Pekerjaan:PRESIDENTNama Karyawan:TURNER Pekerjaan:SALESMANNama Karyawan:ADAMS Pekerjaan:CLERKEmployee Nama:JAMES Pekerjaan:CLERKEmployee Nama:FORD Pekerjaan:ANALYSTENama Karyawan:MILLER Pekerjaan:CLERKPL prosedur berhasil diselesaikan.2. Parameterisasi Kursor Untuk Contoh LoopSET SERVEROUTPUT ON;DECLARECURSOR c_emp (p_job emp.job%type)ISSELECT * FROM emp where job =p_job;BEGINUNTUK skr IN c_emp ('MANAGER')LOOPDBMS_OUTPUT.put_line ('Nama Karyawan:' || cur.ename | | ' Pekerjaan:' || cur.job);END LOOP;END;/Keluaran
Nama Karyawan:JONES Pekerjaan:MANAGERENama Karyawan:BLAKE Pekerjaan:MANAGERENama Karyawan:CLARK Pekerjaan:MANAGERPL/prosedur SQL berhasil diselesaikan.Lihat juga:
- Contoh Kumpulkan Massal Oracle Menggunakan Kursor
- Terus perulangan di Kursor Meskipun Terjadi Kesalahan
- Ekspor Data ke CSV di Oracle
SQL Oracle Menghitung Cluster
Tidak ada lagi SPU
Oracle/SQL:Mengapa kueri SELECT * FROM record WHERE rownum>=5 AND rownum <=10 - mengembalikan nol baris
Bagaimana cara mendapatkan catatan secara acak dari database Oracle?
Dari Stored Procedure, kembalikan parameter OUT &kursor OUT &hasil parse (Oracle)