Oracle PL / SQL UNTUK LOOP dengan Contoh

Isi kandungan:

Anonim

Apa itu Loop?

Pernyataan "FOR LOOP" paling sesuai apabila anda ingin melaksanakan kod untuk beberapa kali diketahui dan bukannya berdasarkan beberapa keadaan lain.

Dalam gelung ini, had bawah dan had yang lebih tinggi akan ditentukan dan selagi pemboleh ubah gelung berada di antara julat ini, gelung akan dijalankan.

Pemboleh ubah gelung adalah kenaikan diri, jadi tidak memerlukan operasi kenaikan eksplisit dalam gelung ini. Pemboleh ubah gelung tidak perlu dinyatakan, kerana dinyatakan secara tersirat.

FOR  in LOOPEND LOOP;
Penjelasan Sintaks:
  • Dalam sintaks di atas, kata kunci 'FOR' menandakan permulaan gelung dan 'END LOOP' menandakan akhir gelung.
  • Pemboleh ubah gelung dinilai setiap kali sebelum melaksanakan bahagian pelaksanaan.
  • Blok pelaksanaan mengandungi semua kod yang perlu dijalankan. Bahagian pelaksanaan boleh mengandungi sebarang pernyataan pelaksanaan.
  • Loop_variable dinyatakan secara tersirat semasa pelaksanaan seluruh gelung, dan skop loop_variable ini hanya akan berada di dalam gelung ini.
  • Sekiranya pemboleh ubah gelung keluar dari julat, maka kawalan akan keluar dari gelung.
  • Gelung dapat dibuat untuk berfungsi dalam urutan terbalik dengan menambahkan kata kunci 'REVERSE' sebelum low_limit.

Contoh 1 : Dalam contoh ini, kita akan mencetak nombor dari 1 hingga 5 menggunakan pernyataan gelung FOR. Untuk itu, kami akan melaksanakan kod berikut.

BEGINdbms Qutput.put linef.Prp.gram started.' );FOR a IN 1… 5LOOPdbms_output.put_line(a);END LOOP:dbms_output.put_iine('Program completed.');END;/

Penjelasan Kod:

  • Baris kod 2 : Mencetak pernyataan "Program dimulakan".
  • Baris kod 3: Kata kunci 'FOR' menandakan permulaan gelung dan loop_variable 'a' dinyatakan. Sekarang akan mempunyai nilai bermula dari 1 hingga 5
  • Baris kod 5: Mencetak nilai 'a'.
  • Baris kod 6: Kata kunci 'END LOOP' menandakan akhir blok pelaksanaan.
  • Kod dari baris 5 akan terus dilaksanakan hingga 'a' mencapai nilai 6, kerana keadaan akan gagal, dan kawalan akan keluar dari gelung.
  • Baris kod 7: Mencetak pernyataan "Program selesai"

Gelung bersarang

Pernyataan gelung juga boleh bersarang. Gelung luar dan dalam boleh terdiri dari pelbagai jenis. Dalam gelung bersarang, untuk setiap nilai lelaran gelung luar, gelung dalaman akan dilaksanakan sepenuhnya.

LOOP -outerLOOP - innerEND LOOP;END LOOP;
Penjelasan Sintaks:
  • Dalam sintaks di atas, gelung luar mempunyai satu lagi gelung di dalamnya.
  • Gelung boleh terdiri dari sebarang jenis dan fungsi pelaksanaannya sama.

Contoh 1 : Dalam contoh ini, kita akan mencetak nombor dari 1 hingga 3 menggunakan pernyataan gelung FOR. Setiap nombor akan dicetak seberapa banyak nilainya. Untuk itu, kami akan melaksanakan kod berikut.

DECLAREb NUMBER;BEGINdbms output put line(‘Program started' );FOR a IN 1… 3LOOPb:=1;WHILE (a>=b)LOOPdbms output put line(a);b:=b+1;END LOOP;‭ END LOOP;‭ ‬dbms_output.put_line('Program completed' );END;/

Penjelasan Kod:

  • Baris kod 2 : Menyatakan pemboleh ubah 'b' sebagai jenis data 'NOMBOR'.
  • Baris kod 4 : Mencetak pernyataan "Program dimulakan".
  • Baris kod 5: Kata kunci 'FOR' menandakan permulaan gelung dan loop_variable 'a' dinyatakan. Sekarang akan mempunyai nilai bermula dari 1 hingga 3
  • Baris kod 7: Menetapkan semula nilai 'b' ke '1' setiap kali.
  • Baris kod 8: Inner while loop memeriksa keadaan a> = b.
  • Baris kod 10: Mencetak nilai 'a' selagi syarat di atas dipenuhi.
  • Baris kod 14: Mencetak pernyataan "Program selesai"

Ringkasan

Gelung UNTUK Gelung
Kriteria EXIT Keluar apabila kaunter mencapai had
Penggunaan Senang digunakan apabila kiraan gelung yang akan dijalankan diketahui.