2. Save as (tempat dokumen pengen disimpan
3. Pilih type All Files pada saat menyimpan
4. Ekstensi filenya (…….*sql)
Anonymous Block ( Blok
Anonimous)
Anonymous Block ( Blok
Anonimous) yaitu blok yang tidak ada nama dan tidak disimpan dalam database
ataupun dalam skema.
Struktur script blok anonymous PL / SQL
Declare
……… deklarasi variabel
Begin
…… prosedural dan SQL masuk disini
End;
1. Hitunglah keliling sebuah segitiga yang
mempunyai alas = 12 cm dan tinggi = 7 cm …….
Jawab :
declare
a number;
t number;
luas number;
begin
a:=12;
t:=7;
luas:=a*t*0.5;
dbms_output.put_line('alas
adalah '||a||'cm');
dbms_output.put_line('tinggi
adalah '||t||'cm');
dbms_output.put_line('luas
segitiga adalah '||luas||'cm2');
end;
NB : apabila saat pengeksekusian program yang kita lakukan berhasil
tetapi tidak mengeluarkan OUTPUT maka yang kita lakukan adalah dengan
mengetikkan kalimat berikut :
“SET SERVEROUTPUT ON ;”
Atau dapat kita lihat seperti gambar berikut :
declare
a number;
t number;
luas number;
begin
a:=&nilai_alas ;
t:=&nilai_tinggi ;
luas:=a*t*0.5;
dbms_output.put_line('alas adalah '||a||'cm');
dbms_output.put_line('tinggi adalah '||t||'cm');
dbms_output.put_line('luas segitiga adalah
'||luas||'cm2');
end;
Hasil pengeksekusian akan tampak seperti
gambar berikut :
1. buatlah
soal pl/sql blok anonymus untuk menghitung total bayar, apabila di inputkan
jumlah barang (bilangan bulat) dan harga barang.
Output tampilanya
:
nama barang :
harga : Rp.
jumlah :
total biaya : Rp
jawab :
declare
nama_barang
varchar2(256);
harga_barang
number(8);
jumlah_barang
number(8);
total number(8);
begin
nama_barang:=’&input_nama_barang’;
harga_barang:=&input_harga_barang;
jumlah_barang:=&input_jumlah_barang;
total:=harga_barang*jumlah_barang;
dbms_output.put_line
('nama_barang: ' ||nama_barang);
dbms_output.put_line
('harga_barang : Rp ' ||harga_barang);
dbms_output.put_line
('jumlah_barang: ' ||jumlah_barang);
dbms_output.put_line
('total : Rp ' ||total);
end;
hasil
pengeksekusian akan tampak seperti gambar berikut :
Struktur script blok anonymous PL / SQL dengan menggunakan
exception
DECLARE
…
deklarasi variabel, type dan subprogram lokal
BEGIN
……
prosedural dan SQL masuk disini
EXCEPTION
……
penanganan eksepsi (ERROR)
END;
Contoh :
1. Tampilkan
frist_name dan last_name dari tabel pegawai yang employee_id = 100 yang ada
pada skema HR…..
declare
vf_name varchar2(256);
vl_name varchar2(256);
begin
select first_name, last_name into
vf_name, vl_name
from employees
where employee_id = '100';
dbms_output.put_line(vf_name||'
'||vl_name);
exception
when no_data_found then
dbms_output.put_line('data tidak ada');
end;
hasil pengeksekusian akan tampak seperti gambar berikut:
Penggunaan IF
IF - THEN - ELSE - END IF
Struktur penggunaan IF :
IF kondisi pertama THEN
…….. baris perintah 1
ELSE
……. baris perintah 2
END IF;
Contoh 1 :
Declare
a varchar(20);
b varchar(2);
begin
a:='&Nama';
b:='&Jenis_Kelamin';
if (b='l')or(b='L') then
dbms_output.put_line('Selamat
Datang Mas '||a);
else if
(b='p')or(b='P') then
dbms_output.put_line('Selamat
Datang Mbak '||a);
end if;
end if;
end;
hasil pengeksekusian akan tampak seperti gambar berikut :
Contoh 2:
declare
a number (3);
begin
a:=&masukkan_nilainya ;
if (a >= 75) then
dbms_output.put_line('Anda
mendapatkan nilai A');
else if((a >= 65) and (a <
75)) then
dbms_output.put_line('Anda
mendapatkan nilai B');
else if((a>=55) and (a <65)) then
dbms_output.put_line('Anda
mendapatkan nilai C');
else if((a >= 40) and (a <55)) then
dbms_output.put_line('Anda
mendapatkan nilai D');
else
if(a <40) then
dbms_output.put_line('Anda
mendapatkan nilai E');
end
if;
end if;
end if;
end if;
end if;
end;
apabila kita menginputkan bilangan a > 75, maka hasil pengeksekusian akan tampak seperti
gambar berikut :
apabila kita menginputkan bilangan 65 >= a < 75, maka hasil pengeksekusian akan tampak seperti
gambar berikut :
apabila kita menginputkan bilangan 55 >= a < 65, maka hasil pengeksekusian akan tampak seperti
gambar berikut :
apabila kita menginputkan bilangan 40 >= a < 55, maka hasil pengeksekusian akan tampak seperti
gambar berikut :
apabila kita menginputkan bilangan a < 40, maka hasil pengeksekusian akan tampak seperti
gambar berikut :
NB : Kalo ada yang kurang tolong diberi komentar yah ...........
Terimakasih