Wednesday, October 25, 2017

Pengantar Pernyataan LOOP PL / SQL


Pernyataan PL / SQL LOOP adalah pernyataan kontrol iteratif yang memungkinkan kamu untuk menjalankan urutan pernyataan berulang kali seperti WHILE dan FOR loop.

Bentuk paling sederhana dari pernyataan LOOP terdiri dari kata kunci LOOP, urutan pernyataan dan kata kunci END LOOP seperti gambar di bawah ini:

LOOP
   sequence_of_statements;
END LOOP;
Perhatikan bahwa setidaknya harus ada satu pernyataan eksekusi antara LOOP dan END LOOP kata kunci. Urutan pernyataan dieksekusi berulang kali sampai mencapai exit loop. PL / SQL memberikan pernyataan EXIT dan EXIT-WHEN untuk memungkinkan kamu menghentikan sebuah loop.

  • EXIT memaksa loop menghentikan eksekusi tanpa syarat dan melewati kontrol ke pernyataan berikutnya setelah pernyataan LOOP. Anda biasanya menggunakan pernyataan EXIT dengan pernyataan IF.

  • Pernyataan EXIT-WHEN memungkinkan loop untuk mengakhiri kondisional. Saat pernyataan EXIT-WHEN tercapai, kondisi klausa WHEN dicentang. Jika kondisi dievaluasi TRUE, loop diakhiri dan kontrol dilewatkan ke pernyataan berikutnya setelah kata kunci END LOOP.Jika kondisi dievaluasi ke FALSE, loop akan berlanjut berulang-ulang sampai kondisi dievaluasi TRUE. Oleh karena itu, jika kamu tidak ingin memiliki lingkaran tak terbatas, kamu harus melakukan sesuatu di dalam lingkaran agar kondisinya menjadi TRUE

Berikut ini menggambarkan pernyataan PL / SQL LOOP dengan EXIT dan EXIT-WHEN statements:
LOOP
   ...
   EXIT;
END LOOP;

LOOP
   ...
   EXIT WHEN condition;
END LOOP;

Contoh pernyataan PL / SQL LOOP

Contoh PL / SQL LOOP dengan EXIT Statement


Dalam contoh ini, kita mendeklarasikan sebuah counter. Di dalam lingkaran, kita menambahkan 1 ke meja dan menampilkannya. Jika nilai konter sama dengan 5, kita menggunakan statemen EXIT untuk mengakhiri loop.

Berikut ini adalah contoh penggunaan pernyataan PL / SQL LOOP dengan EXIT:

SET SERVEROUTPUT ON SIZE 1000000;
DECLARE n_counter NUMBER := 0;
BEGIN
  LOOP
    n_counter := n_counter + 1;
    DBMS_OUTPUT.PUT_LINE(n_counter);
    IF n_counter = 5 THEN
      EXIT;
    END IF;
  END LOOP;
END;
/

 

Contoh PL / SQL LOOP dengan EXIT-WHEN Statement


Kita akan menggunakan contoh counter yang sama di atas. Namun, alih-alih menggunakan pernyataan IF-THEN dan EXIT, kita menggunakan EXIT-WHEN untuk mengakhiri loop. Contoh kode terdaftar sebagai berikut:

SET SERVEROUTPUT ON SIZE 1000000;
DECLARE n_counter NUMBER := 0;
BEGIN
  LOOP
    n_counter := n_counter + 1;
    DBMS_OUTPUT.PUT_LINE(n_counter);
    EXIT WHEN n_counter = 5;
  END LOOP;
END;
/
Seperti yang kamu lihat dalam dua contoh di atas, EXIT dan EXIT-WHEN dapat digunakan secara bergantian. Pernyataan EXIT berjalan bersamaan dengan pernyataan IF-THEN setara dengan pernyataan EXIT-WHEN.

Label Loop


Sebuah loop dapat memiliki label opsional yang merupakan pengenal yang tidak dideklarasikan yang dilampirkan dengan tanda kurung siku sudut << label >>. Label loop muncul di awal dan juga di akhir pernyataan PL / SQL LOOP. Label loop digunakan untuk memenuhi syarat nama variabel counter loop saat sebuah lingkaran disarangkan di dalam lingkaran lain.

Berikut ini menggambarkan sintaks pernyataan loop PL / SQL dengan label:

<<label>>
LOOP
   sequence_of_statements;
END LOOP label;
Contoh berikut menggunakan label loop dengan nested loop:

SET SERVEROUTPUT ON SIZE 1000000;
DECLARE
  n_i NUMBER := 0;
  n_j NUMBER := 0;
BEGIN
  << outer_loop >>
  LOOP
    n_i := n_i + 1;
    EXIT WHEN n_i = 2;
    << inner_loop >>
    LOOP
      n_j := n_j + 1;
      EXIT WHEN n_j = 5;
      DBMS_OUTPUT.PUT_LINE('Outer loop counter ' || n_i);
      DBMS_OUTPUT.PUT_LINE('Inner loop counter ' || n_j);
    END LOOP inner_loop;
  END LOOP outer_loop;
END;
/

PL / SQL LOOP Pernyataan


Dalam tutorial ini, kamu telah belajar bagaimana menggunakan PL / SQL LOOP bersamaan dengan EXIT dan EXIT-WHEN statements untuk membuat pernyataan iteratif di PL / SQL untuk menjalankan serangkaian pernyataan berulang kali.



sumber gambar dan artikel asli : http://www.plsqltutorial.com

0 comments:

Post a Comment

Popular Posts