Penggunaan Loops pada Database Oracle
Procedural Language/Structured Query Language atau yang biasa dikenal dengan PL/SQL dalam database Oracle menyediakan beberapa fasilitas untuk membuat struktur loops (pengulangan) agar dapat menjalankan pernyataan atau urutan pernyataan beberapa kali. Tujuan penggunaan utama loops adalah untuk menjalankan pernyataan secara berulang hingga kondisi keluar terpenuhi. Dalam sebuah loop, penting untuk memiliki kondisi keluar; jika tidak, loop akan menjadi tak terbatas. Dalam database Oracle, PL/SQL menyediakan tiga jenis loop yaitu berikut:
- Basic Loop yang melakukan tindakan berulang tanpa kondisi keseluruhan
- FOR Loop yang melakukan tindakan iteratif berdasarkan hitungan
- WHILE Loop yang melakukan tindakan iteratif berdasarkan kondisi
- Basic Loop
Bentuk paling sederhana dari pernyataan LOOP adalah basic loop, yang menutupi urutan pernyataan antara kata kunci LOOP dan END LOOP. Setiap kali aliran eksekusi mencapai pernyataan END LOOP, kontrol dikembalikan ke pernyataan LOOP yang sesuai di atasnya. Basic loop memungkinkan eksekusi pernyataannya setidaknya sekali, bahkan jika kondisi EXIT sudah terpenuhi saat memasuki loop. Tanpa pernyataan EXIT, loop akan menjadi tak terbatas. Berikut ini adalah syntax dalam basic loop:
- FOR Loop
FOR Loop adalah salah satu jenis loop yang mengulang berdasarkan rentang nilai yang ditentukan. Dalam database Oracle, FOR Loop dapat digunakan untuk mengulang melalui sebuah kursor dan melakukan beberapa tindakan pada setiap catatan dalam kursor. Beberapa catatan yang perlu diperhatikan dalam FOR Loop diantaranya, referensi penghitung hanya ada di dalam loop; di luar loop maka tidak terdefinisi dan kedua batas loop tidak boleh NULL. Berikut ini adalah contoh syntax dalam FOR loop untuk mengulang angka dari 1 hingga 10 dan mencetak nilai i pada setiap iterasinya:
- WHILE Loop
WHILE Loop adalah jenis loop yang terus mengulang selama kondisi tertentu benar. Dalam database Oracle, WHILE Loop dapat digunakan untuk mengulang melalui sebuah kursor hingga mencapai akhir dari set data hasil. Berikut ini adalah contoh syntax dalam WHILE loop untuk mengulang angka dari 1 hingga 10 dan mencetak nilai i ditambah 1 pada setiap iterasinya:
Dalam database Oracle, penggunaan loop dapat disesuaikan dengan kebutuhan dimana penggunaan basic loop dapat digunakan ketika pernyataan di dalam loop harus dieksekusi setidaknya sekali. Lalu, gunakan WHILE loop jika kondisi harus dievaluasi pada awal setiap iterasi dan gunakan FOR loop jika jumlah iterasi diketahui.
Source:
https://docs.oracle.com/cd/B13789_01/appdev.101/b10807/13_elems028.htm