LAPORAN AKHIR
PRAKTIKUM BASIS DATA
LABORATORIUM SISTEM INFORMASI DAN
REKAYASA PERANGKAT LUNAK
BASIS DATA TOKO BANGUNAN
Disusun Oleh:
Nama/NIM : Fahmy Abida Asa Firdausi / 12523037
Nama/NIM : Mohammad Zidni Ilmi / 12523038
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
2
LAPORAN AKHIR
PRAKTIKUM BASIS DATA
LABORATORIUM SISTEM INFORMASI DAN
REKAYASA PERANGKAT LUNAK
BASIS DATA TOKO BANGUNAN
Asisten Pembimbing : Nielsa Maulida
Disusun Oleh:
Nama/NIM : Fahmy Abida Asa Firdausi / 12523037
Nama/NIM : Mohammad Zidni Ilmi / 12523038
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
HALAMAN PENGESAHAN ASISTEN
( JUDUL PROGRAMMING PROJECT )
Telah Dipertahankan di Depan Sidang Penguji Diajukan Sebagai Salah Satu Syarat Untuk Menempuh Ujian Responsi Praktikum
Yogyakarta, __________ 2013
Asisten
yang mengesahkan Status Laporan : Diterima / Ditolak dengan Revisi
Tanggal koreksi : ________________
Alasan ditolak :
4
HALAMAN PERSEMBAHAN
Laporan ini penulis kami persembahkan untuk :
1. Orang tua kami yang senantiasa memberi dukungan dalam bentuk materi maupun doa.
2. Keluarga besar Jurusan Teknik Informatika Universitas Islam Indonesia.
3. Dosen-dosen Basis Data Teknik Informatika Universitas Islam Indonesia.
4. Para asisten Laboratorium Sistem Informasi dan Rekayasa Perangkat Lunak (Sirkel).
5. Untuk seluruh teman-teman Jurusan Teknik Informatika Universitas Islam
Indonesiapada umumnya yang telah memberi semangat dan bantuan dalam pengerjaan basis dataini.
HALAMAN MOTTO
“Sesungguhnya setelah kesulitan itu ada kemudahan” (Al-insyirah:5)
“bersakit-sakit kehulu berenang-renang ke tepian, bersakit-sakit dahulu
bersenang-senang kemudian”
“jangan pernah ragu bahwa tuhan selalu bersamamu, menderita hanya sementara, percayalah bahwa semuanya akan indah pada waktunya”
(Mario Teguh)
6
KATA PENGANTAR
Alhamdulillahi rabbil alamin segala puji bagi Allah SWT, hanya karena limpahan rahmat dan hidayah-Nya, maka penulis dapat menyelesaikan Laporan akhir ini. Segala sesuatu juga kemudahan yang datang adalah limpahan atas apa yang dikaruniakn oleh-Nya sebagai sesuatu yang tak terhingga, sehingga Laporan Akhir dengan judul ”BASISDATA TOKO BANGUNAN” dapat diselesaikan
Laporan ini disusun dengan tujuan untuk memenuhi tugas akhir dalam mata kuliah Praktikum Basis Data sekaligus sebagai pengalaman dan tolak ukur kemampuan mahasiswa selama memperoleh materi di laboratorium Sistem Informasi dan Rekayasa Perangkat Lunak ( Sirkel ).
Rangkaian penyelesaian yang telah penulis lakukan tidak lepas dari bimbingan dan dorongan dari banyak pihak. Maka penghargaan yang tinggi dan
ucapan terima kasih yang sebesar-besarnya penulis tujukan kepada:
1. Allah SWT atas semua berkah dan rahmat-Nya sehingga Laporan Akhir
ini dapat diselesaikan.
2. Bapak, Ibu dan keluarga atas kasih sayang, segala limpahan doa, dan dukungan
3. Dosen mata kuliah Basis Data ibu Chanifah Indah Ratna S.kom
4. Asisten pembimbing praktikum ini mbak Nielsa Maulida
5. Seluruh asisten pembimbing di laboratorium Sirkel
6. Teman-teman informatika seperjuangan.
Dalam penyelesaian laporan ini penulis menyadari bahwa masih banyak terdapat kesalahan dan kekurangannya, karena itu kritik dan saran yang bersifat membangun sangat Penulis harapkan demi sempurnanya laporan ini. semoga laporan ini banyak berguna dan bermanfaat bagi kita semua
Yogyakarta, 1 Juli 2013
Penulis
TAKARIR
Atribute karakteristik atau properti dari entitas yang menyajikan penjelasan detail mengenai entitas tersebut
Count mencacah
Customer pembeli/pelanggan
Date tipe data tanggal
Entitas objek yang mewakili objek di dunia nyata dan dapat dibedakan dari sesuatu yang lain.
Entity Relationship Diagram diagram hubungan/relasi antar entitas Foreign Key kolom penghubung antar tabel
From dari
Group By pengelompokan
Join On penggabungan tabel
Join Using penggabungan tabel dengan nama kolom yang sama
Kardinalitas suatu hubungan maksimum antar tabel (dari tabel satu ke tabel yang lain)
Like seperti (kondisi lojik)
Natural Join penggabungan tabel dengan nama dan tipe data yang sama
Not Null tidak boleh bernilai kosong
Null nilai kosong
Number tipe data angka
Order By pengurutan
Primary Key kolom untuk mengidentifikasi setiap baris di tabel secara unik
Relationship relasi atau hubungan
1
Select menampilkan
Syntax kode program
Table tabel
Varchar2 tipe data karakter dengan panjang tidak pasti
DAFTAR ISI
HALAMAN JUDUL ...i
HALAMAN PENGESAHAN ...ii
HALAMAN PERSEMBAHAN ... iii
HALAMAN MOTTO ... iv
1.1 Deskripsi Masalah...1
1.2 Batasan Masalah ...2
BAB II HASIL DAN PEMBAHASAN ...3
2.1 Desain ERD ( Entity Relationship Diagram ) ... 3
2.2 Struktur Tabel ... 5
2.3 Relasi Tabel ... 7
2.4 Hasil dan Pembahasan ... 8
BAB III KESIMPULAN DAN SARAN ... 15
3.1 Kesimpulan ... 15
3.2 Saran... 15
DAFTAR PUSTAKA...xi
3
DAFTAR TABEL
Tabel 2.1 Struktur Tabel Costumer ...5
Tabel 2.2 Struktur Tabel Barang ...5
Tabel 2.3 Struktur Tabel Pegawai ...6
Tabel 2.4 Struktur Tabel Transaksi ...6
DAFTAR GAMBAR
Gambar 2.1 ERD Basis Data Toko Bangunan ... 3
Gambar 2.2 Relasi Tabel Basis Data Toko Bangunan ... 7
Gambar 2.3 Tampilan Tabel Barang...8
Gambar 2.4 Tampilan setelah Menggunakan Klausa WHERE... 9
Gambar 2.5 Tampilan Data Menggunakan Kondisi LIKE...9
Gambar 2.6 Tampilan Data Menggunakan Kondisi Lojik...9
Gambar 2.7 Tampilan Data Menggunakan Perintah ORDER BY...10
Gambar 2.8 Tampilan Menggunakan Fungsi COUNT... 10
Gambar 2.9 Tampilan Data Menggunakan Perintah GROUP BY dan AVG... 11
Gambar 2.10 Tampilan data menggunakan NATURALJOIN... 12
Gambar 2.11 Tampilan data menggunakan JOIN USING... 13
BAB I PENDAHULUAN
1.1 Deskripsi Masalah
Toko Bangunan ialah suatu tempat jual beli yang menyediakan
barang-barang atau alat-alat yang diperlukan untuk membuat suatu bangunan seperti rumah, gedung, jembatan dan lain-lain. Toko bangunan menjual perlengkapan bahan-bahan bangunan kepada konsumen.Untuk mengetahui perkembangan usahanya, pemilik toko tersebut setiap bulannya harus membuat suatu laporan tentang banyaknya pembelian dan penjualan barang yang terjadi serta untuk mengetahui persediaan stok barang yang tersisa.
Jumlah konsumen yang begitu banyak menyebabkan transaksi yang terjadi setiap harinya banyak. Pemilik toko bangunan X mengalami kesulitan untuk mengetahui arus keluar masuknya barang dan juga persediaan stok barang. Selain itu juga jumlah barang yang dijual oleh pemilik toko bangunan pun memerlukan pendataan dan harus dikelola. Akan tetapi, selama ini toko bangunan tersebut melakukan segala bentuk pendataan data barang dan transaksinya masih secara manual. Pendataan dan pengelolaan data yang dilakukan secara manual itu memiliki banyak resiko untuk tingkat keamanan, misalnya apabila terjadi kebakaran di toko bangunan, maka recovery terhadap data yang hilang akan sulit dilakukan karena backup data dilakukan secara manual. Pendataan dan pengelolaan data secara manual juga bisa menyebabkan kesalahan pegawai toko bangunan dalam memasukkan data-data pelanggan yang nantinya akan berakibat
fatal bagi toko tersebut.
Untuk menyelesaikan masalah-masalah yang ada maka diperlukan suatu
2
toko bangunan X. sehingga dapat membantu meminimalisir resiko kehilangan data dan resiko human error dalam pengelolaan data Toko Bangunan X.
1.2 Batasan Masalah
Agar dalam pembahasan permasalahan tidak berkembang terlalu luas. Kami memandang perlu memberikan batasan - batasan masalah untuk basis data “Toko Bangunan”, yang terdiri dari data barang, data transaksi barang, data customer, data pegawai, dan data transaksi, dengan batasan-batasan meliputi :
Basis data ini merupakan suatu basis data yang berkonsentrasi di satu toko bangunan saja.
Dalam toko bangunan tersebut terdapat barang, pegawai, dan pembeli. Terdapat juga transaksi jual beli barang antara pembeli dan pegawai.
BAB II
HASIL DAN PEMBAHASAN
2.1 Desain ERD (Entity Relationship Diagram) Toko Bangunan
ERD adalah suatu model untuk menjelaskan hubungan antar data dalam basis data berdasarkan objek-objek dasar data yang mempunyai hubungan antar
relasi. untuk menggambarkannya digunakan beberapa notasi dan simbol. Pada dasarnya ada tiga simbol yang digunakan, yaitu : entitas, atribut dan relationship
Gambar 2.1 ERD Basis Data Toko Bangunan
Dalam rancangan basis data Toko Bangunan ini, terdapat 4 buah entitas, yaitu :
1. Entitas Customer
Entitas Customer mempunyai 4 buah atribut yaitu
nm_customer, id_customer, alamat, no_telp. Atribut id_costumer berperan sebagai Primary Key dalam entitas ini. Entitas customer mempunyai 1 relationship dengan 1 entitas lainnya. Relationship entitas Customer dengan Transaksi adalah melakukan dengan kardinalitas 1:M.
4
Entitas Barang mempunyai 4 buah atribut yaitu id_barang, nm_barang, lokasi_simpan, dan stock. Atribut id_barang berperan sebagai Primary Key dalam entitas Barang. Entitas Barang mempunyai
relationship dengan Entitas Transaksi yaitu mendapati dengan kardinalitas M:N terdapat 2 buah atribut dalam relationship mendapati yaitu jumlah_jual dan jumlah_bayar.
3. Entitas Pegawai
Dalam entitas Pegawai, terdapat 4 buah atribut yaitu id_pegawai, nm_pegawai, no_telp, dana alamat. Atribut id_pegawai
berperan sebagai Primary Key. Entitas pegawai mempunyai
relationship dengan Entitas Transaksi yaitu melayani dengan kardinalitas 1:M.
4. Entitas Transaksi
Entitas Transaksi mempunyai 2 buah atribut yaitu id_transaksi dan tanggal. Atribut id_transaksi berperan sebagai Primary Key. Entitas Transaksi mempunyai relationship dengan 3 entitas lain yaitu dengan entitas Customer berupa melakukan dengan kardinalitas 1:M. kemudian dengan entitas barang berupa mendapati dengan kardinalitas M:N,
relationship mendapati mempunyai 2 buah atribut yaitu jumlah_jual dan jumlah_bayar. dan terakhir dengan entitas pegawai berupa melayani dengan kardinalitas 1:M.
2.2 Struktur Tabel
Tabel 2.1 Struktur Tabel Costumer
Pada tabel Costumer terdapat id_costumer, nama_costumer, alamat, dan no_telp. Di tabel tersebut id_costumer berperan sebagai Primary Key yang mempunyai tipe data Number. Nama_costumer memiliki tipe data Varchar2. alamat memiliki tipe data Varchar2. No_telp memiliki tipe data Varchar2.
Tabel 2.2 Struktur Tabel Barang
Pada tabel Barang terdapat id_barang, nama_barang, stock, lokasi_simpan dan harga . Di tabel tersebut id_barang berperan sebagai Primary Key yang mempunyai tipe data Number. Nama_barang memiliki tipe data Varchar2 . stock
6
Tabel 2.3 Struktur Tabel Pegawai
Pada tabel Pegawai terdapat id_pegawai, nama_pegawai, alamat dan no_. Di tabel tersebut id_barang berperan sebagai Primary Key yang mempunyai tipe data Number. Nama_pegawai memiliki tipe data Varchar2. alamat memiliki tipe data Varchar2. No_telp memiliki tipe data Number.
Tabel 2.4 Struktur Tabel Transaksi
Pada tabel Transaksi terdapat id_transaksi, tanggal, id_costumer dan id_pegawai. Di tabel tersebut id_transaksi berperan sebagai Primary Key yang mempunyai tipe data Number. tanggal memiliki tipe data Date. Id_costumer berperan sebagai Foreign Key dari tabel costumer yang memiliki tipe data Number. Id_pegawai berperan sebagai Foreign Key dari tabel pegawai yang memiliki tipe data Number.
Pada tabel Transaksi_barang terdapat id_transaksi, id_barang, jumlah_jual dan jumlah_bayar. Di tabel tersebut id_transaksi merupakan Foreign
Key dari tabel transaksi yang mempunyai tipe data Number. id_barang merupakan Foreign Key dari tabel barang yang mempunyai tipe data Number. Jumlah_jual dan jumlah_bayar memiliki tipe data Number.
2.3 Relasi Tabel
Gambar 2.2 Relasi Tabel Basis Data Toko Bangunan
8
BAB III
HASIL DAN PEMBAHASAN
Berikut ini kami akan menampilkan Query-Query dari Database yang telah kami masukkan kedalam statement ISQL*plus beserta hasilnya.
Menggunakan Perintah SELECT
Perintah SELECT berguna untuk menampilkan data yang terdapat pada suatu tabel. Berikut contoh penggunaan perintah SELECT:
Menampilkan data dari seluruh kolom pada suatu tabel
select * from barang;
Tampilan hasil running syntax di atas :
Gambar 2.3 Tampilan Data pada Tabel Barang
Klausa WHERE digunakan untuk membatasi data yang akan ditampilkan,. Dalam penulisannya, klausa WHERE ditulis setelah klausa FROM.
Contoh:
select * from transaksi
where id_costumer = 1201172
Gambar 2.4 Tampilan setelah Menggunakan Klausa WHERE
Mencari Data String Menggunakan kondisi LIKE
Untuk mencari data string dengan menyeleksi baris-baris data yang cocok dengan pola karakter tertentu, kita bisa menggunakan LIKE. Contoh:
select id_costumer, nama_costumer, alamat
from costumer
where alamat like '%kaliurang%'
Gambar 2.5 Tampilan Data Menggunakan Kondisi LIKE
Menggunakan Kondisi Lojik untuk Beberapa Kondisi di Klausa WHERE
Kita bisa menggunakan kondisi lojik ketika klausa WHERE dihadapkan dengan beberapa syarat.
Contoh:
select id_costumer, nama_costumer, alamat
from costumer
10
Gambar 2.6 Tampilan Data Menggunakan Kondisi Lojik AND dalam klausa WHERE
Mengurutkan Data dengan ORDER BY
ORDER BY digunakan untuk menampilkan data secara urut. Perintah ORDER BY ditulis diakhir perintah SELECT.
Contoh:
select *
from barang
order by harga asc
Gambar 2.7 Mengurutkan data Menggunakan ORDER BY
Menampilkan Data dengan Group Function
Group Function berfungsi untuk mengelompokan data, berikut beberapa contoh penggunaan Group Function
a. Menggunakan fungsi COUNT untuk mencacah data.
Contoh:
from barang
Gambar 2.8 Tampilan Menggunakan Fungsi COUNT
b. Menggunakan klausa GROUP BY dan AVG(average)
GROUP BY dan AVG(average) untuk mengembalikan informasi ringkas untuk setiap grupnya serta mencari rata rata yang memnuhi syarat klausa where. Klausa GROUP BY ditulis setelah klausa FROM atau WHERE.
Contoh:
select avg(harga), stock
from barang
where lokasi_simpan like 'b%'
group by stock
Gambar 2.9 Tampilan Data Menggunakan Perintah GROUP BY dan AVERAGE
Menampilkan Data dari Banyak Tabel
Dengan menggunakan klausa JOIN, kita dapat menampilkan data dari banyak tabel.
a. Menggunakan NATURAL JOIN
Klausa NATURAL JOIN digunakan hanya untuk
12
Contoh :
select id_barang, id_transaksi , stock, tanggal,
id_pegawai
from barang
natural join transaksi
Gambar 2. 10 Tampilan data menggunakan NATURALJOIN
b. Menggunakan JOIN USING
Penggabungan dengan JOIN ditambah dengan klausa
USING, kolom dari tabel yang akan digabungkan, tidak harus sama tipe datanya, akan tetapi nama kolom yang harus sama. Contoh :
select id_costumer, id_barang, b.nama_barang,
id_transaksi, t.jumlah_bayar
from barang b join transaksi_barang t
using(id_barang) join transaksi
using(id_transaksi) join costumer
using(id_costumer)
Gambar 2. 11 Tampilan data menggunakan JOIN USING
c. Menggunakan JOIN ON
Dengan menggunakan klausa ON, kita dapat menentukan kondisi-kondisi khusus atau menentukan kolom yang hendak di join-kan.
Contoh:
select c.id_costumer, c.nama_costumer, t.tanggal,
tb.jumlah_bayar, b.nama_barang
from costumer c join transaksi t
on(c.id_costumer=t.id_costumer)
join transaksi_barang tb
on(t.id_transaksi=tb.id_transaksi)
join barang b
14
BAB IV
KESIMPULAN DAN SARAN
3.1 Kesimpulan
Basis data toko bangunan ini dibuat untuk membantu mempermudah pendataan dalam transaksi jual-beli di toko bangunan.
3.2 Saran
1 Dalam pemakaiannya, disarankan basisdata ini disertai dengan basis data yang mencatat pendataan barang tersendiri seperti pengadaan barang, sumber barang, dan sebagainya. Dikarenakan basis data ini tidak mengakomodir hal tersebut.
2 Basis data ini ditujukan untuk pemakaian dalam satu toko bangunan, sehingga disarankan untuk tidak menggunakannya mendata transaksi dari berbagai toko bangunan sekaligus.
16
DAFTAR PUSTAKA
Laboratorium Sistem Informasi dan Rekayasa Perangkat Lunak (SIRKEL). 2013.
Modul Praktikum Basis Data. Laboraturium SIRKEL : Yogyakarta.
LAMPIRAN 1. Lembar Asistensi
2. Lembar Pengesahan