Anda di halaman 1dari 17

LAPORAN PRAKTIKUM

BASIS DATA LANJUTAN


Function

Nama : Muhammad Ramadhan


NRP :3120600043
Kelas : 2 D4 ITB
1. Contoh function sederhana

Jawab :

2. Contoh cara memanggil function diatas

Jawab:
3. Contoh function mengambil satu huruf depan, pada argument

Jawb :

Lalu ekseskusi program function dengan cara ini no 4.

4. Contoh cara memanggil function diatas

5. Hasil
6. Contoh function perkalian argumen1 dengan argument2

Jawab:

:
Lalu untuk menjalankan function diatas :
7. Menggabungkan 2 buah argument bertipe varchar

Jawab :
Karena pada sql dev saya belum ada table scott, maka pada create function scott.flatihan3
saya ubah menggunakan table hr yaitu menjadi hr.flatihan3 seperti dibawah ini :

Cara menjalankan function diatas :


8. Contoh function, memeriksa nilai dari argumen1 dibandingkan dengan
argumen2,pembandingnya ada di argumen 3 (sama dengan,lebih besar,lebih kecil)

Jawab :
Setelahitu jalnkan function diatas dengan cara :

9. Contoh function mendeteksi bilangan genap atau ganjil

Jawab :

Lalu jalankan function :


10.Contoh function mencari data pada tabel yang lain. (pada tabel emp di user scott terdapat
field deptno yang berelasi dengan field deptno pada tabel dept, function ini
menterjemahkan field deptno pada tabel emp menjadi field dname pada tabel dept)

Jawab :

Lalu jalankan function misal seperti dibawah ini :


11.Contoh function mencari data pada tabel yang lain (mencari GRADE pada tabel
salgrade pada input data field SAL pada tabel emp di user scott)

Jawab :

Pertama liat dulu isi table salgrade misal untuk pilih sampel gaji :
Lalu jalankan function diatas misal seperti dibawah ini :

Gaji 1700 berada pada grade ke-3.


12.Contoh function untuk mengkonversi bilangan kedalam suatu kata

Jawab :
Run program diatas dan mucul notif dialogue :

Lalu jalanlkan function diatas misal seperti dibawah ini:


TUGAS PRAKTIKUM
1. Tuliskan script membuat table dengan field dan tipe data sbb :
➢ Table Barang :
a. field id_barang type data number(10) Not Null
b. field nama type data varchar2(50) Not Null
c. field spesifikasi type data varchar2(200) Null
d. field harga type data number(20) Not Null
e. field satuan type data varchar2(20) Null
Jawab :
CREATE TABLE BARANG2
( id_barang number(10) NOT NULL,
nama varchar2(50) NOT NULL,
spesifikasi varchar2(200) NULL,
harga number(20) NOT NULL,
satuan varchar2(20) NULL
);

Lalu cek deskripsi table barang2

➢ Table Transaksi
a. field nomor_transaksi type data number(10) Not Null
b. field id_barang type data number(10) Not Null
c. field tanggal type data date Not Null
d. field jumlah type data number(5) Not Null
Jawab :
CREATE TABLE TRANSAKSI
( no_transaksi number(10) NOT NULL,
id_barang number(10) NOT NULL,
tanggal date NOT NULL,
jumlah number(5) NOT NULL
);
Lalu cek deskripsi table transaksi:
2. Tuliskan script function PL/SQL untuk membalik kata
Contoh : Meja
Hasil : ajeM
Jawab :
Kode function:
CREATE OR REPLACE FUNCTION balik_kata (word varchar2)
return varchar
is
str1 varchar2(50):=word;
str2 varchar2(50);
len number;
i number;
begin
len:=length(str1);
for i in reverse 1..len
loop
str2:=str2 || substr(str1,i,1);
end loop;
return str2;
end;

Lalu jalankan function misal nya seperti dibawah ini :


select BALIK_KATA('rama') from dual;
3. Tuliskan script function PL/SQL untuk menghitung jumlah huruf vokal dan konsonan
Contoh : Meja
Hasil : Jumlah huruf vokal 2 dan konsonan 2
Jawab :
Kode function :
create or replace function vokal_kons(word in varchar2)
return varchar2
is
hasil varchar2(255);
cons number;
vocal number;
begin
cons:=length(replace(translate(word,'aAiIuUeEoO',' '),'
',null));
vocal:=length(replace(word,' ',null))-cons;
hasil:='Jumlah vokal '||vocal||' dan konsonan '||cons;
return hasil;
end;
Kemudian untuk menjalankan function diatas :
select vokal_kons('Ramadhan') from dual;
4. Tuliskan script function PL/SQL untuk menampilkan data field jumlah barang pada tabel
transaksi dikalikan dengan data field harga pada table barang. Note : field id_barang pada
tabel transaksi berelasi dengan field id_barang pada tabel barang
Jawab :
Pertama liat isi dari table barang yang sudah saya insert manual :

Lalu liat isi dari table transaksi yang sudah saya insert manual :

Lalu buat kode pl /sql function :


CREATE OR REPLACE FUNCTION HARGA_ALL(no_id in number)
return number
is
harga_barang barang2.harga%TYPE;
begin
select barang2.harga*TRANSAKSI.JUMLAH into harga_barang
from barang2,transaksi where barang2.id_barang=no_id and
barang2.id_barang=transaksi.id_barang;
RETURN harga_barang;
end;
Lalu untuk menguji coba function diatas :
select nama,harga_all(id_barang) from barang2;

Hasil dari function harga_all akan menampilkan hasil kali jumlah barang pada tabel
transaksi dengan data field harga pada table barang yang telah direlasikan field no_barang
nya pada kedua table. Contohnya diatas PIPA harganya pada table barang senilai
RP.100000 dan dan pada table transaksi jumlanya 5, maka pada saat dieksekusi function
harga_all hasilnya akan 5*100000=Rp.500000, begitu juga dengan dengan barang KURSI.

Anda mungkin juga menyukai