Oracle PL / SQL WHILE LOOP ile Örnek

İçindekiler:

Anonim

While Loop nedir?

WHILE döngü deyimi , EXIT koşulunun döngünün en başında olması dışında Basic döngü deyimine benzer şekilde çalışır .

Çıkış koşulu yürütme bölümünden önce kontrol edildiğinden, koşul yerine getirilmezse yürütme bloğunun bir kez bile yürütülmeyeceği bir giriş-kontrol döngüsü gibi çalışır. Döngünün her seferinde koşulu örtük olarak doğruladığı için döngüden çıkmak için 'EXIT' anahtar sözcüğünü gerektirmez.

WHILE LOOPEND LOOP;
Sözdizimi Açıklaması:
  • Yukarıdaki sözdiziminde, 'WHILE' anahtar sözcüğü döngünün başlangıcını ve 'END DÖNGÜSÜ' döngünün sonunu belirtir.
  • EXIT koşulu, yürütme kısmı yürütülmeye başlamadan önce her seferinde değerlendirilir.
  • Yürütme bloğu, yürütülmesi gereken tüm kodu içerir.
  • Yürütme bölümü herhangi bir yürütme ifadesini içerebilir.

Örnek 1 : Bu örnekte, WHILE döngü deyimini kullanarak 1'den 4'e kadar sayı yazdıracağız. Bunun için aşağıdaki kodu çalıştıracağız.

DECLAREa NUMBER :=1;BEGINdbms_output.put_line('Program started');WHILE (a <= 5)LOOPdbms_output.put_line(a);a:=a+1;END LOOP;dbms_output.put_line(‘Program completed' ); END:/

Kod Açıklaması:

  • Kod satırı 2 : 'a' değişkenini 'SAYI' veri türü olarak bildirmek ve onu '1' değeriyle başlatmak.
  • Kod satırı 4 : "Program başladı" ifadesinin yazdırılması.
  • Kod satırı 5: 'WHILE' anahtar kelimesi döngünün başlangıcını işaretler ve ayrıca 'a' değerinin 5'ten küçük veya 5'e eşit olup olmadığını kontrol eder.
  • Kod satırı 7: 'a' değerini yazdırır.
  • Kod satırı 8: 'a' değerini +1 artırır.
  • Kod satırı 9: 'SON DÖNGÜ' anahtar sözcüğü yürütme bloğunun sonunu gösterir.
  • Satır 7 ve satır 8'den gelen kod, 'a' 6 değerine ulaşana kadar çalışmaya devam edecek, çünkü koşul DOĞRU'ya dönecek ve kontrol döngüden ÇIKACAK.
  • Kod satırı 10: "Program tamamlandı" ifadesinin yazdırılması

Özet

Döngü Döngü sırasında
Çıkış kriteri Kontrol koşulu yanlış döndürdüğünde çık
Kullanım Döngü sayısı bilinmediğinde ve çıkış başka bir koşula bağlı olduğunda kullanmak iyidir.