PL/SQL (Prosedural Language/Structured Query Language) Merupakan Bahasa
PL/SQL (Prosedural Language/Structured Query Language) Merupakan Bahasa
1. Query yang di gunakan pada PL/SQL Oracle Express Edition sehingga dapat
menampilkan urutan angka dengan menggunakan syntax perulangan dengan batasan
yang di tentukan.
kita menamakan fungsi perulangan dengan nama `loop` dengan parameter beranama
`aa` dengan tipe data number, fungsi loop dimulai dengan syntax `loop` dan di akhiri
dengan syntax `end loop`. setiap kali perulangan di jalankan akan menjalan tugas
output dengan penambahan variable agar dapat
keluar dari perulangan seperti syntax di bawah ini.
CREATE OR REPLACE PROCEDURE loop1(aa in number) is
x number;
begin
x := 1 ;
LOOP
dbms_output.put_line(x);
x := x + 1;
exit when x>aa;
end loop;
end;
/
2. Menentukan jenis angka pada PL/SQL menggunakan fungsi percabangan
Sama dengan soal pertama kita memanfaatkan query perulangan namun dengan
syntax `for`, setiap perulangan hingga `end loop` akan di lakukan tugas output. Namun
berbeda dengan pertama kita tidak perlu melakukan manual penambahan variabel agar
keluar dari looping.
CREATE OR REPLACE PROCEDURE loop2(bb in number) is
begin
for y in 1..bb loop
dbms_output.put_line(y);
end loop;
end;
/
3. Query `while` kondisi keluar dari looping di taruh sebaris saat deklarasi fungsi
looping.
CREATE OR REPLACE PROCEDURE loop3(cc in number) is
z number;
begin
z := 1 ;
WHILE z <=cc loop
dbms_output.put_line(z);
z := z + 1;
end loop;
end;
/
BACA JUGA:
4. Fungsi branching `if` , `elsif` dan `else` untuk menentukan nilai berdasarkan
kategorinya yang telah di tentukan sebelumnya.
CREATE OR REPLACE PROCEDURE jenis(num in number) is
begin
if num > 0 then
dbms_output.put_line('Bilangan termasuk bil positif');
elsif num < 0 then
dbms_output.put_line('Bilangan termasuk bil negatif');
else
dbms_output.put_line('Bilangan termasuk bil nol');
end if;
end;
/
Declare
j integer;
x integer;
counter integer;
begin
dbms_output.put_line('BILANGAN PRIMA');
for x in 1..25 loop
j :=0;
counter := 0;
for j in 1..x loop
if mod(x,j) = 0 then counter := counter +1;
end if;
end loop;
if counter <= 2 then
dbms_output.put_line(x);
end if;
end loop;
end;