CURSOR
Blok PL/SQL menangani keluaran hanya satu baris(record) karena variabel penampungnya harus mempunyai sebuah nilai. Karena itu, diperlukan sebuah cursor untuk menampung semua kondisi dari keluaran sebuah query.
Cursor merupakan sebuah variable yang digunakan untuk menampung hasil query yang lebih dari satu row atau record.
Macam-macam Cursor:
- Cursor implisit
Merupakan perintah SELECT statement dengan klausa INTO yang terdapat di dalam blok PL/SQL dan harus menghasilkan satu baris record.
- Cursor explisit.
Tidak seperti cursor implisit, cursor eksplisit harus dideklarasikan terlebih dahulu sebelum digunakan. Terdapat empat tahapan penggunaan cursor eksplisit ini yaitu: declare, open, fetch dan terakhir adalah close.
- Declare
Merupakan deklarasi nama cursor dan definisi struktur query yang akan dilakukan di dalam.
- Open
statement untuk mebuka cursor.
- Fetch
Fetch merupakan perintah untuk mengambil isi cursor, dimana isi dari cursor tersebut adalah hasil query yang telah dideklarasikan pada statement deklarasi cursor.
- Close
Setelah pemrosesan query selesai, cursor harus ditutup dengan satatemen CLOSE
Sintaks Umum Cursor:
Declare cursor [nama_cursor_bebas] is
select [daftar_kolom]
from [daftar_tabel]
where [syarat];
begin
open [nama_cursor_bebas];
loop
fetch [nama_cursor_bebas] into [daftar_variabel];
exit when [nama_cursor_bebas] %notfound;
[aksi_lain]
end loop;
close [nama_cursor_bebas];
end;
/
0 komentar:
Posting Komentar