MODUL XI

            PERCABANGAN DAN PERULANGAN PADA PL/SQL



A. Maksud

   Menjelaskan penggunaan perintah-perintah perulangan dan percabangan
   pada PL/SQL.



B. Tujuan

   Mahasiswa dapat menngunakan dan menulis kode PL/SQL dengan
   menggunakan berbagai perintah perulangan dan percabangan sesuai
   dengan kebutuhan.


C. Dasar Teori
Percabangan
Percabangan adalah suatu kontrol untuk pengecekan yang dilakukan sebelum
statemen-statemen dalam sebuah blok PL/SQL dieksekusi.Statement yang
dapat digunakan untuk percabangan adalah IF dan CASE, dengan syntax
sebagai berikut
 IF kondisi THEN Statemen;
 END IF

 CASE (ekspresi)
     WHEN nilai_1 THEN Statemen_1;
     WHEN nilai_2 THEN Statemen_2;
     ………
     WHEN nilai_n THEN Statemen_n
      [ELSE Statemen_lain;]
 END CASE;

Perulangan
Pengulangan adalah suatu blok yang memperbolehkan statemen-statemen
dalam   sebuah    blok   PL/SQL   diulang-ulang.   Tiga   buah   jenis   struktur
pengulangan dalam Oracle, yaitu simple loop, For dan While. Sintak masing-
masing struktur pengulangan tersebut adalah:




                                                                              49
LOOP
      Statement;
      ………
   END LOOP;

   FOR variabel IN indeks_awal .. indeks_akhir LOOP
    Statement;
   …..
   END LOOP

   WHILE kondisi LOOP
      Statemen;
      …………..
   END LOOP;



D. Praktik
Cobalah beberapa PL/SQL dibawah ini
   declare
      noBulan integer;
      namaBulan varchar2(9);
   begin
      noBulan := 3;
      case noBulan
           when 1 then namaBulan := ‘January’;
           when 2 then namaBulan := ‘Februari’;
           when 3 then namaBulan := ‘Maret’;
           when 4 then namaBulan := ‘April’;
           when 5 then namaBulan := ‘Mei’;
           when 6 then namaBulan := ‘Juni’;
           when 7 then namaBulan := ‘Juli’;
           when 8 then namaBulan := ‘Agustus’;
           when 9 then namaBulan := ‘September’;
           when 10 then namaBulan := ‘Oktober’;
           when 11 then namaBulan := ‘November’;
           when 12 then namaBulan := ‘Desember’;
           else namaBulan := ‘’;
   end case;
   dbms_output.put_line(namaBulan);
   end;
   /




   declare

                                                      50
noBulan integer;
    namaBulan varchar2(9);
 begin
    noBulan := 3;
    if noBulan = 1 then
         namaBulan := ‘January’;
    elseif noBulan = 2 then
         namaBulan := ‘Februari’;
    elseif noBulan = 2 then
         namaBulan := ‘Februari’;
    elseif noBulan = 3 then
         namaBulan := ‘Maret’;
    elseif noBulan = 4 then
         namaBulan := ‘April’;
    elseif noBulan = 5 then
         namaBulan := ‘Mei’;
    elseif noBulan = 6 then
         namaBulan := ‘Juni’;
    elseif noBulan = 7 then
         namaBulan := ‘Juli’;
    elseif noBulan = 8 then
         namaBulan := ‘Agustus’;
    elseif noBulan = 9 then
         namaBulan := ‘September’;
    elseif noBulan = 10 then
         namaBulan := ‘Oktober’;
    elseif noBulan = 11 then
         namaBulan := ‘November’;
    elseif noBulan = 12 then
         namaBulan := ‘Desember’;
    else
         namaBulan := ‘’;
    end if;
 dbms_output.put_line(namaBulan);
 end;
 /


declare
    k integer;
begin
    k := 1;
    loop
         dbms_output.put_line(‘Baris ke – ‘||to_char(k));
         k := k+1;
         exit when k > 5;
    end loop;
end;
/

declare

                                                        51
k integer;
 begin
     for k in 1..5 loop
          dbms_output.put_line(‘Baris ke – ‘||to_char(k));
     end loop;
 end;
 /

 declare
     k integer;
 begin
     k := 1;
     while k <= 5 loop
          dbms_output.put_line(‘Baris ke – ‘||to_char(k));
          k := k+1;
     end loop;
 end;
 /


E. Tugas
Akan diberikan pada saat praktikum




                                                         52

11 percabangan pl sql

  • 1.
    MODUL XI PERCABANGAN DAN PERULANGAN PADA PL/SQL A. Maksud Menjelaskan penggunaan perintah-perintah perulangan dan percabangan pada PL/SQL. B. Tujuan Mahasiswa dapat menngunakan dan menulis kode PL/SQL dengan menggunakan berbagai perintah perulangan dan percabangan sesuai dengan kebutuhan. C. Dasar Teori Percabangan Percabangan adalah suatu kontrol untuk pengecekan yang dilakukan sebelum statemen-statemen dalam sebuah blok PL/SQL dieksekusi.Statement yang dapat digunakan untuk percabangan adalah IF dan CASE, dengan syntax sebagai berikut IF kondisi THEN Statemen; END IF CASE (ekspresi) WHEN nilai_1 THEN Statemen_1; WHEN nilai_2 THEN Statemen_2; ……… WHEN nilai_n THEN Statemen_n [ELSE Statemen_lain;] END CASE; Perulangan Pengulangan adalah suatu blok yang memperbolehkan statemen-statemen dalam sebuah blok PL/SQL diulang-ulang. Tiga buah jenis struktur pengulangan dalam Oracle, yaitu simple loop, For dan While. Sintak masing- masing struktur pengulangan tersebut adalah: 49
  • 2.
    LOOP Statement; ……… END LOOP; FOR variabel IN indeks_awal .. indeks_akhir LOOP Statement; ….. END LOOP WHILE kondisi LOOP Statemen; ………….. END LOOP; D. Praktik Cobalah beberapa PL/SQL dibawah ini declare noBulan integer; namaBulan varchar2(9); begin noBulan := 3; case noBulan when 1 then namaBulan := ‘January’; when 2 then namaBulan := ‘Februari’; when 3 then namaBulan := ‘Maret’; when 4 then namaBulan := ‘April’; when 5 then namaBulan := ‘Mei’; when 6 then namaBulan := ‘Juni’; when 7 then namaBulan := ‘Juli’; when 8 then namaBulan := ‘Agustus’; when 9 then namaBulan := ‘September’; when 10 then namaBulan := ‘Oktober’; when 11 then namaBulan := ‘November’; when 12 then namaBulan := ‘Desember’; else namaBulan := ‘’; end case; dbms_output.put_line(namaBulan); end; / declare 50
  • 3.
    noBulan integer; namaBulan varchar2(9); begin noBulan := 3; if noBulan = 1 then namaBulan := ‘January’; elseif noBulan = 2 then namaBulan := ‘Februari’; elseif noBulan = 2 then namaBulan := ‘Februari’; elseif noBulan = 3 then namaBulan := ‘Maret’; elseif noBulan = 4 then namaBulan := ‘April’; elseif noBulan = 5 then namaBulan := ‘Mei’; elseif noBulan = 6 then namaBulan := ‘Juni’; elseif noBulan = 7 then namaBulan := ‘Juli’; elseif noBulan = 8 then namaBulan := ‘Agustus’; elseif noBulan = 9 then namaBulan := ‘September’; elseif noBulan = 10 then namaBulan := ‘Oktober’; elseif noBulan = 11 then namaBulan := ‘November’; elseif noBulan = 12 then namaBulan := ‘Desember’; else namaBulan := ‘’; end if; dbms_output.put_line(namaBulan); end; / declare k integer; begin k := 1; loop dbms_output.put_line(‘Baris ke – ‘||to_char(k)); k := k+1; exit when k > 5; end loop; end; / declare 51
  • 4.
    k integer; begin for k in 1..5 loop dbms_output.put_line(‘Baris ke – ‘||to_char(k)); end loop; end; / declare k integer; begin k := 1; while k <= 5 loop dbms_output.put_line(‘Baris ke – ‘||to_char(k)); k := k+1; end loop; end; / E. Tugas Akan diberikan pada saat praktikum 52