312705000 Laporan Akhir Praktikum Basis Data Basis Data Toko Bangunan 12523037 12523038
1
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
UNIVERSITAS ISLAM INDONESIA
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
UNIVERSITAS ISLAM INDONESIA
3
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 :
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
Diserahkan kembali paling lambat : ___ _______ 2013
iii4
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 data ini.
iv5
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)
v6
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
vi0
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
dunia
nyata dan dapat dibedakan
mewakili
objek
di
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
vii
Select
menampilkan
Syntax
kode program
Table
tabel
Varchar2
tipe data karakter dengan panjang
tidak pasti
Where
kondisi untuk membatasi tampilan
2
viii
DAFTAR ISI
HALAMAN JUDUL ......................................................................................i
HALAMAN PENGESAHAN ..............................................................................ii
HALAMAN PERSEMBAHAN .......................................................................... iii
HALAMAN MOTTO ........................................................................................... iv
KATA PENGANTAR............................................................................................ v
TAKARIR ............................................................................................................ vi
DAFTAR ISI.........................................................................................................viii
DAFTAR TABEL ................................................................................................. ix
DAFTAR GAMBAR ............................................................................................ x
BAB I PENDAHULUAN.......................................................................................1
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
LAMPIRAN...........................................................................................................xii
ix 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
Tabel 2.5 Struktur Tabel Transaksi_barang .............................................................6
x4
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 NATURAL JOIN............................. 12
Gambar 2.11 Tampilan data menggunakan JOIN USING.................................. 13
Gambar 2.12 Tampilan data menggunakan JOIN ON.......................................... 15
5
1
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
penyimpanan data elektronik yang dapat dikelola oleh banyak pengguna yang
disebut dengan basisdata. Oleh karena itu dibuatlah suatu basisdata berjudul
basisdata Toko Bangunan X yang dapat membantu menyelesaikan berbagai
macam permasalahan yang berisi data pembelian, penjualan, data costumer untuk
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.
Basis data disini berkonsentrasi terhadap proses jual beli barang tersebut.
3
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.
2.
Entitas Barang
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
relationship
Primary
dengan
Entitas
Key.
Entitas
Transaksi
pegawai
mempunyai
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.
5
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
memiliki tipe data Number . Lokasi_simpan memiliki tipe data Varchar2. Harga
memiliki tipe data Number
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 .
Tabel 2.5 Struktur Tabel Transaksi_Barang
7
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
Gambar di atas merupakan tabel basis data Toko Bangunan yang dibuat
dengan DBDesigner4. Terdapat 5 tabel yang saling berelasi, namun disitu terlihat
ada 1 tabel hasil dari relasi many to many (N:M) yaitu tabel Transaksi_Barang
yang merupakan hasil relasi dari tabel Transaksi dan Barang. Dari gambar
ini,nantinya script akan digunakan untuk membuat tabel di Oracle.
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
Menggunakan Klausa Where
9
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
where nama_costumer like 'a%' and alamat like '%palagan%'
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:
select count(id_barang)
11
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
menggabungkan tabel dengan kolom yang mempunyai nama dan
tipe data yang sama.
12
Contoh :
select id_barang, id_transaksi , stock, tanggal,
id_pegawai
from barang
natural join transaksi
Gambar 2. 10 Tampilan data menggunakan NATURAL JOIN
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)
order by id_costumer
13
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
on(tb.id_barang=b.id_barang)
14
Gambar 2. 12 Tampilan data menggunakan JOIN ON
15
xii
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
xi
DAFTAR PUSTAKA
Laboratorium Sistem Informasi dan Rekayasa Perangkat Lunak (SIRKEL). 2013.
Modul Praktikum Basis Data . Laboraturium SIRKEL : Yogyakarta.
17
xi
LAMPIRAN
1. Lembar Asistensi
2. Lembar Pengesahan
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
UNIVERSITAS ISLAM INDONESIA
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
UNIVERSITAS ISLAM INDONESIA
3
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 :
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
.................................................................................................................
Diserahkan kembali paling lambat : ___ _______ 2013
iii4
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 data ini.
iv5
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)
v6
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
vi0
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
dunia
nyata dan dapat dibedakan
mewakili
objek
di
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
vii
Select
menampilkan
Syntax
kode program
Table
tabel
Varchar2
tipe data karakter dengan panjang
tidak pasti
Where
kondisi untuk membatasi tampilan
2
viii
DAFTAR ISI
HALAMAN JUDUL ......................................................................................i
HALAMAN PENGESAHAN ..............................................................................ii
HALAMAN PERSEMBAHAN .......................................................................... iii
HALAMAN MOTTO ........................................................................................... iv
KATA PENGANTAR............................................................................................ v
TAKARIR ............................................................................................................ vi
DAFTAR ISI.........................................................................................................viii
DAFTAR TABEL ................................................................................................. ix
DAFTAR GAMBAR ............................................................................................ x
BAB I PENDAHULUAN.......................................................................................1
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
LAMPIRAN...........................................................................................................xii
ix 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
Tabel 2.5 Struktur Tabel Transaksi_barang .............................................................6
x4
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 NATURAL JOIN............................. 12
Gambar 2.11 Tampilan data menggunakan JOIN USING.................................. 13
Gambar 2.12 Tampilan data menggunakan JOIN ON.......................................... 15
5
1
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
penyimpanan data elektronik yang dapat dikelola oleh banyak pengguna yang
disebut dengan basisdata. Oleh karena itu dibuatlah suatu basisdata berjudul
basisdata Toko Bangunan X yang dapat membantu menyelesaikan berbagai
macam permasalahan yang berisi data pembelian, penjualan, data costumer untuk
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.
Basis data disini berkonsentrasi terhadap proses jual beli barang tersebut.
3
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.
2.
Entitas Barang
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
relationship
Primary
dengan
Entitas
Key.
Entitas
Transaksi
pegawai
mempunyai
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.
5
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
memiliki tipe data Number . Lokasi_simpan memiliki tipe data Varchar2. Harga
memiliki tipe data Number
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 .
Tabel 2.5 Struktur Tabel Transaksi_Barang
7
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
Gambar di atas merupakan tabel basis data Toko Bangunan yang dibuat
dengan DBDesigner4. Terdapat 5 tabel yang saling berelasi, namun disitu terlihat
ada 1 tabel hasil dari relasi many to many (N:M) yaitu tabel Transaksi_Barang
yang merupakan hasil relasi dari tabel Transaksi dan Barang. Dari gambar
ini,nantinya script akan digunakan untuk membuat tabel di Oracle.
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
Menggunakan Klausa Where
9
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
where nama_costumer like 'a%' and alamat like '%palagan%'
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:
select count(id_barang)
11
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
menggabungkan tabel dengan kolom yang mempunyai nama dan
tipe data yang sama.
12
Contoh :
select id_barang, id_transaksi , stock, tanggal,
id_pegawai
from barang
natural join transaksi
Gambar 2. 10 Tampilan data menggunakan NATURAL JOIN
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)
order by id_costumer
13
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
on(tb.id_barang=b.id_barang)
14
Gambar 2. 12 Tampilan data menggunakan JOIN ON
15
xii
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
xi
DAFTAR PUSTAKA
Laboratorium Sistem Informasi dan Rekayasa Perangkat Lunak (SIRKEL). 2013.
Modul Praktikum Basis Data . Laboraturium SIRKEL : Yogyakarta.
17
xi
LAMPIRAN
1. Lembar Asistensi
2. Lembar Pengesahan