Anda di halaman 1dari 9

BASIS DATA RENTAL MOBIL

DI SUSUN OLEH : 1. DIMAS PURWO PRANATA 2. HENDI SEPTIAWAN 3. TONI ALEXANDRA

Latar belakang
Pendistribusian data yang cepat, akurat, dan aman merupakan

salah satu syarat bagi perusahaan agar dapat memanfaatkan waktu yang ada dengan sebaik mungkin. Dan dengan perkembangan teknologi yang sudah sangat maju ini, para perusahaan tersebut sudah tidak perlu cemas dengan pendistribusian data yang cepat,akurat, dan aman. Karena database management system atau yang lebih kita kenal dengan DBMS sudah dapat melakukan hal tersebut. Perusahaan apapun mungkin sangat perlu menggunakan DBMS ini. Tak terkecuali dengan sebuah perusahaan rental mobil yang akan kita angkat dalam tugas besar kali ini. Perusahaan rental mobil sangat memerlukan data yang benar benar akurat. Ini dikarenakan agar mobil yang dipinjam dapat diketahui kapan tanggal yang kembali, serta proses yang lainnya dalam perusahaaan agen rental mobil tersebut.

Rumusan masalah
Bagaimana merancang basis data sebuah rental

mobil? Pengolahan data apa saja yang diperlukan sebuah rental mobil? Apa keuntungan yang akan diperoleh dari pembuatan basis tersebut?

TUJUAN
Mempermudah admin dalam pencarian informasi

serta pengolahan data Mengetahui cara merancang basis data dari rental mobil. Mengetahui jumlah dan daftar mobil yang dipinjam maupun stok, serta nama peminjam

BATASAN MASALAH
Proposal ini hanya akan membahas mengenai

system dalam pengolahan suatu data, khususnya dalam sebuah proses rental mobil, seperti data peminjaman dari pelanggan serta biaya yang harus dikeluarkan.

E-R DIAGRAM
ID_RENTAL Nama

Jml_mobil

Alamat

No_telp

Agen rental

memiliki

Nama

ID_MOBIL

Jumlah Tgl_pinjam

Mobil

Merek

Nama Biaya

Model

No_Telp

Pelanggan

Transaksi

No_KTP Alamat Tgl_kembali

QUERY PROCEDURE

create or replace procedure laporan is v_nama pelanggan.nama%type; v_tanggalk transaksi.tgl_kembali%type; v_tanggalp transaksi.tgl_pinjam%type; v_denda number; f number; v_id transaksi.id_pinjam%type; v_tanggal date; begin v_id :='&masukan_ID_pelanggan'; v_tanggal :='&masukan_Tanggal_sekarang'; select Id_pinjam,nama,tgl_pinjam,tgl_kembali into v_id,v_nama,v_tanggalp,v_tanggalk from transaksi join pelanggan on transaksi.no_ktp = pelanggan.no_ktp where id_pinjam =v_id; dbms_output.put_line ('===============laporan pembayaran=================== '); f :=bayar(v_id,v_tanggal); dbms_output.put_line (' ID Pinjam anda adalah :'||v_id); dbms_output.put_line (' Nama anda adalah :'||v_nama); dbms_output.put_line (' Meminjam tanggal :'||v_tanggalp); dbms_output.put_line (' perjanjian Mengembalikan tanggal :'||v_tanggalk); dbms_output.put_line (' Dengan denda :'||f); dbms_output.put_line (' Dengan total pembayaran :'||f); dbms_output.put_line ('====================================================='); end;

QUERY FUNCTION

create or replace function bayar (v_id transaksi.id_pinjam%type, v_tanggal date) return number is tot_sel number; v_tglkem Transaksi.Tgl_kembali%type; v_tglpin Transaksi.tgl_pinjam%type; v_biaya Transaksi.Biaya%type; v_denda number; sel_tgl1 number; sel_tgl2 number; v_bayar number; begin select Tgl_pinjam, tgl_kembali, biaya into v_tglpin, v_tglkem, v_biaya from Transaksi where id_pinjam = v_id; sel_tgl1 := v_tglkem - v_tglpin; sel_tgl2 := v_tanggal -v_tglpin; tot_sel := sel_tgl2 - sel_tgl1; case when tot_sel = 0 then v_denda := 0; when tot_sel = 1 then v_denda := 100000; when tot_sel = 2 then v_denda := 200000; when tot_sel = 3 then v_denda := 300000; when tot_sel >= 4 then v_denda := 400000; end case; v_bayar :=tot_sel * v_biaya + v_denda; return v_bayar; end bayar;

QUERY TRIGGER

create or replace TRIGGER aft_ins_row_Transaksi AFTER INSERT ON TRANSAKSI FOR EACH ROW declare new number; BEGIN IF inserting then update mobil Set stok = stok - :new.jumlah where id_mobil = :new.id_mobil; end if; end;

Anda mungkin juga menyukai