Page 1
LAPORAN AKHIR
PRAKTIKUM BASIS DATA
LABORATORIUM SISTEM INFORMASI DAN
REKAYASA PERANGKAT LUNAK
DB RESERVASI TIKET PESAWAT
Disusun Oleh:
Nama/NIM : Riawan Indra Permana / 10523136
Nama/NIM : Ramadani / 10523144
Nama/NIM : Imam Abdul H. / 10523151
JURUSAN TEKNIK INFORMATIKA
FAKULTAS TEKNOLOGI INDUSTRI
UNIVERSITAS ISLAM INDONESIA
2011
Page 2
i
HALAMAN PENGESAHAN ASISTEN
DB RESERVASI TIKET PESAWAT
Telah Dipertahankan di Depan Sidang Penguji
Diajukan Sebagai Salah Satu Syarat
Untuk Menempuh Ujian Responsi Praktikum
Jogjakarta, __ Maret 2011
Asisten yang mengesahkan
Status Laporan : Diterima / Ditolak dengan Revisi
Tanggal koreksi : ________________
Alasan ditolak :
...................................................................................................................
...................................................................................................................
...................................................................................................................
...................................................................................................................
...................................................................................................................
...................................................................................................................
...................................................................................................................
...................................................................................................................
...................................................................................................................
...................................................................................................................
...................................................................................................................
...................................................................................................................
Diserahkan kembali paling lambat : ___ _______ 2011
Page 3
ii
PERSEMBAHAN
Laporan Programming Project ini kami susun untuk memenuhi salah satu
syarat untuk mengikuti responsi dan sebagai tugas akhir mata kuliah Praktikum
Basisdata Tahun Akademik 2010/2011. Di harapkan laporan ini dapat bermanfaat
bagi pihak yang bersangkutan.
Page 4
iii
MOTTO
Semua mimpi kita akan menjadi kenyataan, jika kita memiliki keberanian untuk
mengejarnya.
Bermimpilah seperti jika anda akan hidup selamanya, jalani hidup seperti jika
anda akan mati hari ini.
Belajar ketika orang lain tidur, bekerja ketika orang lain bermalasan, dan
bermimpi ketika orang lain berharap.
Bermimpilan seperti jika anda akan hidup selamanya, jalani hidup seperti jika
anda akan meninggal hari ini.
Untuk mencapai kesuksesan, kita jangan hanya bertindak, tapi juga perlu
bermimpi, jangan hanya berencana, tapi juga perlu untuk percaya.
Page 5
iv
KATA PENGANTAR
Rasa syukur yang dalam kami ucapkan kepada Allah SWT, karena atas
limpahan rahmat dan karunia-Nyalah kami dapat menyelesaikan laporan
programming project Basis Data ini, yang berjudul “DB Reservasi Tiket
Pesawat”. Laporan ini kami buat dalam rangka memenuhi salah satu mata kuliah
Praktikum Basis Data di Fakultas Teknologi Industri Universitas Islam Indonesia.
Dalam proses penyusunan Laporan Basis Data ini kami telah berusaha dengan
sebaik-baiknya, akan tetapi kami merasa masih banyak kekurangannya. Selama
penyusunan kami mendapatkan bimbingan, arahan, koreksi dan saran, untuk itu
rasa terima kasih yang sedalam-dalamnya kami sampaikan kepada :
1. Fuad Indra Setiawan selaku asisten pembimbing kami.
2. Rekan-rekan mahasiwa yang telah banyak memberikan masukan untuk
laporan ini.
Demikian laporan ini kami buat semoga bermanfaat.
Yogyakarta, 21 Maret 2011
Penyusun
Page 6
v
TAKARIR
Database basisdata
Entity Relationship Diagram diagram hubungan/relasi
antar entitas
Relationship hubungan
Number nomor
Primary Key kunci utama
Date tanggal
Ascending kecil ke besar
Printscreen cuplikan gambar
Null boleh berisi data atau tidak
Not Null harus berisi data
Query kode
Foreign Key kunci penghubung
Unique Identifier identifier Unik
One to one satu entitas ke satu entitas
Many to one banyak entitas ke satu entitas
One to many satu entitas ke banyak entitas
Script kode program
Softcopy dokumen digital
Page 7
vi
DAFTAR ISI
HALAMAN PENGESAHAN ASISTEN ................................................................ i
PERSEMBAHAN ................................................................................................... ii
MOTTO ................................................................................................................. iii
KATA PENGANTAR ........................................................................................... iv
TAKARIR ............................................................................................................... v
DAFTAR ISI .......................................................................................................... vi
DAFTAR TABEL ................................................................................................. vii
DAFTAR GAMBAR ........................................................................................... viii
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 ............................................................................................. 10
2.4 Hasil dan Pembahasan ............................................................................ 11
BAB III KESIMPULAN DAN SARAN .............................................................. 21
3.1 Kesimpulan ............................................................................................. 21
3.2 Saran ........................................................................................................ 21
DAFTAR PUSTAKA ........................................................................................... 22
LAMPIRAN .......................................................................................................... 23
Page 8
vii
DAFTAR TABEL
Tabel 2.4. 1 Query untuk menampilkan data dari semua kolom .......................... 11
Tabel 2.4. 2 Query untuk menampilkan isi dari kolom tertentu ........................... 11
Tabel 2.4. 3 Query untuk memberikan diskon 10%.............................................. 12
Tabel 2.4. 4 Query untuk memberikan nama alias................................................ 13
Tabel 2.4. 5 Query untuk menampilkan data berdasarkan rute_idrute ................. 13
Tabel 2.4. 6 Query untuk menampilkan jumlah pembayaran antara 600 ribu dan 1
juta ......................................................................................................................... 14
Tabel 2.4. 7 Query untuk menampilkan jumlah dan rute_idrute tertentu ............. 14
Tabel 2.4. 8 Query untuk mengurutkan data pada kolom tgl_pemesanan secara
ascending. ............................................................................................................. 15
Tabel 2.4. 9 Query fungsi avg, max, dan sum....................................................... 16
Tabel 2.4. 10 Query untuk mengelompokkan data tertentu .................................. 16
Tabel 2.4. 11 Query pengelompokkan data tertentu ............................................. 17
Tabel 2.4. 12 Query dengan menggunakan natural join ....................................... 18
Tabel 2.4. 13 Query untuk mengelompokkan data dari dua tabel ........................ 18
Tabel 2.4. 14 Query menampilkan data dengan klausa ON .................................. 19
Page 9
viii
DAFTAR GAMBAR
Gambar 2.1. 1 Desain ERD database reservasi tiket pesawat ................................ 3
Gambar 2.2. 1 Struktur tabel pegawai ..................................................................... 5
Gambar 2.2. 2 Struktur tabel pelanggan.................................................................. 6
Gambar 2.2. 3 Struktur tabel rute ............................................................................ 7
Gambar 2.2. 4 Struktur tabel maskapai ................................................................... 8
Gambar 2.2. 5 Struktur tabel pembayaran .............................................................. 8
Gambar 2.3. 1 Relasi tabel database reservasi tiket pesawat ............................... 10
Gambar 2.4. 1 Printscreen hasil running query dari tabel 2.4.1 ........................... 11
Gambar 2.4. 2 Printscreen hasil running query dari tabel 2.4.2 ........................... 12
Gambar 2.4. 3 Printscreen hasil running query dari tabel 2.4.3 ........................... 12
Gambar 2.4. 4 Printscreen hasil running query dari tabel 2.4.4 ........................... 13
Gambar 2.4. 5 Prinscreen hasil running query dari tabel 2.4.5 ............................ 14
Gambar 2.4. 6 Printscreen hasil running query dari tabel 2.4.6 ........................... 14
Gambar 2.4. 7 Printscreen hasil running query dari tabel 2.4.7 ........................... 15
Gambar 2.4. 8 Printscreen hasil running query dari tabel 2.4.8 ........................... 15
Gambar 2.4. 9 Printscreen hasil running query dari tabel 2.4.9 ........................... 16
Gambar 2.4. 10 Prinscreen hasil running query dari tabel 2.4.10 ........................ 17
Gambar 2.4. 11 Printscreen hasil running query dari tabel 2.4.11 ....................... 17
Gambar 2.4. 12 Printscreen hasil running query dari tabel 2.4.12 ....................... 18
Gambar 2.4. 13 Printscreen hasil running query dari tabel 2.4.13 ....................... 19
Gambar 2.4. 14 Printscreen hasil running query dari tabel 2.4.14 ....................... 20
Page 10
BAB I
PENDAHULUAN
1.1 Deskripsi Masalah
Agen pemesanan tiket pesawat adalah perusahaan yang menyediakan jasa
penjualan tiket pesawat. Perusahaan tersebut memiliki kerja sama dengan
beberapa maskapai. Sebuah maskapai memiliki jadwal dan rute yang berbeda
dengan maskapai lainnya. Agen tersebut memiliki pegawai yang mengurusi
bidang jasa tersebut. Terdapat calon penumpang yang akan memesan tiket kepada
agen tersebut.
Dalam sebuah agen pemesanan tiket pesawat pastinya membutuhkan tempat
penyimpanan data yang besar dan kompleks sehingga dibutuhkan database
reservasi tiket pesawat yang dapat menyimpan berbagai data dalam sebuah agen
tersebut, seperti data pegawai meliputi identitas pegawai, nama pegawai,posisi
pegawai, gaji pegawai, datapelanggan meliputi identitas pelanggan, nama
pelanggan, usia pelanggan, tanggal keberangkatan, keteranga, data pembayaran
meliputi identitas pembayaran, jumlah pembayaran, tanggal pembayaran, status
pembayaran, data rute meliputi identitas rute, kelas, harga, kota tujuan, sisa
kapasitas, dan yang terakhir data maskapai meliputi identitas maskapai, nama
maskapai. Dalam hal ini database tidak hanya dapat menyimpang data pelanggan
namun juga menyimpang data pegawainya karena setiap reservasi tiket pasti
tercantum pegawai mana yang melayani pelanggan.
Terkadang pelanggan juga hanya memesan tiket tanpa harus membayar tiket
tersebut, sehingga database ini dapat menyimpang data pembayaran dari
pelanggan, jika pelanggan tidak membayar tiket dalam waktu yang telah
ditentukan, maka pegawai agen tersebut dapat mengapus data pelanggan tersebut.
Diharapkan database reservasi tiket pesawat ini dapat mempermudah sebuah agen
pemesanan tiket pesawat dalam penyimpanan data-datanya.
Page 11
2
1.2 Batasan Masalah
Agar dalam pembahasan permasalahan tidak berkembang terlalu luas,
pembuat memandang perlu memberikan batasan - batasan masalah untuk database
“Reservasi Tiket Pesawat”, yang meliputi database yang dibuat hanya mampu
diisi maksimal 4 maskapai penerbangan, serta database ini mampu menyimpan 20
data dari penumpang yang melakukan transaksi selain itu database hanya memuat
5 rute penerbangan saja dan terdapat 2 jadwal dalam 1 rute penerbangan yang
disimpan dalam database ini.
Dalam batasan masalah ini setiap penumpang tidak dapat memesan lebih dari
satu tiket pada waktu dan rute yang bersamaan baik pada maskapai yang sama
maupun pada maskapai yang lain, serta pada database ini hanya menampilkan
data rute seperti kota asal, kota tujuan, waktu keberangkatan, waktu kedatangan,
dan lain-lain, untuk tanggal menyesuaikan dengan data dari maskapai itu sendiri,
karena setiap tanggal berbeda harga tiketnya, untuk disini tabel rute diasumsikan
untuk semua tanggal dan setiap harinya.
Page 12
BAB II
HASIL DAN PEMBAHASAN
2.1 Desain ERD (Entity Relationship Diagram)
Pelanggan
Tgl Pemesanan
Id Pelanggan
No Telepon
Nama Pelanggan
Rute
Id Rute
Kota Asal
Kota Tujuan
Memilih
Waktu Berangkat
Waktu Tiba
Kelas
Melakukan
Pembayaran
Tgl PembayaranId Pembayaran
Jumlah
Melayani
Pegawai
Id Pegawai Nama Pegawai
Posisi Gaji
1
N
N
1
1
1
Usia Harga
Sisa Kapasitas
Maskapai
Dimiliki
Id MaskapaiNama Maskapai
Memiliki
Status Pembayaran
N
1
1
N
Keterangan
Tgl Berangkat
Batas tgl pembayaran Gambar 2.1. 1 Desain ERD database reservasi tiket pesawat
Penjelasan ERD :
Terdapat lima buah entitas dan setiap entitas mempunyai satu unique identifier
pada ERD database reservasi tiket pesawat yaitu :
1. Entitas pegawai, pada entitas ini terdapat empat atribut yaitu id pegawai,
nama pegawai, posisi, dan gaji. Atribut id pegawai menjadi unique
identifier pada entitas ini.
Page 13
4
2. Entitas pelanggan, pada entitas ini terdapat tujuh atribut yaitu id
pelanggan, nama pelanggan, no telepon, usia, tanggal pemesanan, tanggal
berangkat, dan keterangan. Atribut id pelanggan menjadi unique identifier
pada entitas ini.
3. Entitas rute, pada entitas ini terdapat delapan atribut yaitu id rute, kota
asal, kota tujuan, waktu keberangkatan, waktu kedatangan, kelas, harga,
dan sisa kapasitas dalam sebuah pesawat yang akan digunakan. Atribut id
rute menjadi unique identifier pada entitas ini.
4. Entitas maskapai, pada entitas ini terdapat dua atribut saja yaitu id
maskapai dan nama maskapai. Atribut id maskapai menjadi unique
identifier pada entitas ini.
5. Entitas pembayaran, pada entitas ini terdapat lima atribut yaitu id
pembayaran, jumlah, status pembayaran, tanggal pembayaran, dan batas
akhir tanggal pembayaran. Atribut id pembayaran menjadi unique
identifier pada entitas ini.
Terdapat relationship dan kardinalitas pada masing-masing entitas tersebut yaitu
1. Entitas pegawai dan pelanggan, relationship nya adalah melayani.
Sehingga muncul kata kerja pegawai melayani pelanggan.
Satu pegawai dapat melayani banyak penumpang, dan satu penumpang
hanya dilayani oleh satu pegawai, sehingga kardinalitasnya adalah one to
many (1:N).
2. Entitas pelanggan dan rute, relationship nya adalah memilih. Sehingga
muncul kata kerja pelanggan memilih rute.
Satu pelanggan hanya dapat memilih satu rute pada satu waktu yang sama,
dan satu rute dipilih oleh banyak pelanggan dalam satu waktu yang sama,
sehingga kerdinalitasnya adalah many to one (N:1).
3. Entitas rute dan maskapai, relationship nya adalah dimiliki. Sehingga
muncul kata kerja rute dimiliki oleh maskapai.
Satu rute dengan harga yang berbeda hanya dimiliki oleh satu maskapai,
Page 14
5
dan maskapai memiliki banyak rute, sehingga kardinalitasnya adalah many
to one (N:1).
4. Entitas pelanggan dan pembayaran, relationship nya adalah melakukan.
Sehingga muncul kata kerja pelanggan melakukan pembayaran.
Setiap pelanggan hanya dapat melakukan satu kali pembayaran, dan satu
pembayaran hanya dapat dilakukan oleh setiap pelanggan, sehingga
kardinalitasnya adalah one to one (1:1).
5. Entitas rute dan pembayaran, relationship nya adalah memiliki. Sehingga
muncul kata kerja rute memiliki pembayaran.
Setiap rute memiliki banyak pembayaran dalam satu waktu, dan satu
pembayaran hanya dimiliki oleh setiap rute, sehingga kardinalitasnya
adalah many to one (N:1).
2.2 Struktur Tabel
Gambar 2.2. 1 Struktur tabel pegawai
Penjelasan Gambar 2.2.1
Tabel ini digunakan untuk menyimpan data pegawai yang memiliki empat
kolom dengan tipe datanya masing-masing. Berikut penjelasan struktur tabel
pegawai.
1. Kolom idpegawai sebagai primary key dengan tipe data Number tanpa
batasan pengisian karakter.
2. Kolom nama dengan tipe data Varchar2 dengan panjang maksimal
pengisian 50 karakter, dan pada kolom ini harus terisi data (not null).
Page 15
6
3. Kolom posisi dengan tipe data Varchar2 dengan panjang maksimal
pengisian 25 karakter, dan pada kolom ini harus terisi data (not null).
4. Kolom gaji dengan tipe data Number tanpa batasan pengisian karakter,
lalu pada kolom ini harus terisi data (not null).
Gambar 2.2. 2 Struktur tabel pelanggan
Penjelasan Gambar 2.2.2
Tabel ini digunakan untuk menyimpan data pelanggan yang memiliki tujuh
kolom dengan tipe datanya masing-masing. Berikut penjelasan struktur tabel
pelanggan.
1. Kolom idpelanggan sebagai primary key dengan tipe data Number tanpa
batasan pengisian karakter.
2. Kolom nama dengan tipe data Varchar2 dengan panjang maksimal
pengisian 25 karakter, dan pada kolom ini harus terisi data (not null).
3. Kolom no_telepon dengan tipe data Varchar2 dengan panjang maksimal
pengisian 15 karakter, dan pada kolom ini tidak harus terisi data (null).
4. Kolom usia dengan tipe data Number tanpa batasan pengisian karakter,
lalu pada kolom ini tidak harus terisi data (null).
5. Kolom tgl_pemesanan dengan tipe data Date, lalu pada kolom ini harus
terisi data (not null).
6. Kolom tgl_berangkat dengan tipe data Date, lalu pada kolom ini harus
terisi data (not null).
Page 16
7
7. Kolom keterangan dengan tipe data Varchar2 dengan panjang maksimal
pengisian 50 karakter, dan pada kolom ini tidak harus terisi data (null).
Gambar 2.2. 3 Struktur tabel rute
Penjelasan Gambar 2.2.3
Tabel ini digunakan untuk menyimpan data rute yang memiliki delapan kolom
dengan tipe datanya masing-masing. Berikut penjelasan struktur tabel rute.
1. Kolom idrute sebagai primary key dengan tipe data Varchar2 dengan
panjang maksimal pengisian 10 karakter.
2. Kolom kota_asal dengan tipe data Varchar2 dengan panjang maksimal
pengisian 25 karakter, dan pada kolom ini harus terisi data (not null).
3. Kolom kota_tujuan dengan tipe data Varchar2 dengan panjang maksimal
pengisian 25 karakter, dan pada kolom ini harus terisi data (not null).
4. Kolom wktu_brangkat dengan tipe data Varchar2 dengan panjang
maksimal pengisian 10 karakter, dan pada kolom ini harus terisi data (not
null).
5. Kolom wktu_tiba dengan tipe data Varchar2 dengan panjang maksimal
pengisian 10 karakter, dan pada kolom ini harus terisi data (not null).
6. Kolom kelas dengan tipe data Varchar2 dengan panjang maksimal
pengisian 25 karakter, dan pada kolom ini harus terisi data (not null).
7. Kolom harga dengan tipe data number tanpa batasan pengisian karakter,
dan pada kolom ini harus terisi data (not null).
Page 17
8
8. Kolom sisa_kapasitas dengan tipe data Number tanpa batasan pengisian
karakter, dan pada kolom ini tidak harus terisi data (null).
Gambar 2.2. 4 Struktur tabel maskapai
Penjelasan Gambar 2.2.4
Tabel ini digunakan untuk menyimpan data maskapai yang memiliki dua
kolom dengan tipe datanya masing-masing. Berikut penjelasan struktur tabel
maskapai.
1. Kolom idmaskapai sebagai primary key dengan tipe data Varchar2 dengan
panjang maksimal pengisian 25 karakter.
2. Kolom nama dengan tipe data Varchar2 dengan panjang maksimal
pengisian 25 karakter, dan pada kolom ini harus terisi data (not null).
Gambar 2.2. 5 Struktur tabel pembayaran
Penjelasan Gambar 2.2.5
Tabel ini digunakan untuk menyimpan data pembayaran yang memiliki lima
kolom dengan tipe datanya masing-masing. Berikut penjelasan struktur tabel
pembayaran.
Page 18
9
1. Kolom idpembayaran sebagai primary key dengan tipe data Varchar2
dengan panjang maksimal pengisian 25 karakter.
2. Kolom jumlah dengan tipe data Number tanpa batasan pengisian karakter,
dan pada kolom ini harus terisi data (not null).
3. Kolom status_pembayaran dengan tipe data Varchar2 dengan panjang
maksimal pengisian 25 karakter, dan pada kolom ini harus terisi data (not
null).
4. Kolom tgl_pembayaran dengan tipe data Date, lalu pada kolom ini tidak
harus terisi data (null).
5. Kolom bts_tgl_bayar dengan tipe data Date, lalu pada kolom ini tidak
harus terisi data (null).
Page 19
10
2.3 Relasi Tabel
Gambar 2.3. 1 Relasi tabel database reservasi tiket pesawat
Penjelasan Gambar 2.3.1
1. Tabel pegawai dan pelanggan berelasi dengan kardinalitas one to many
(1:N) sehingga primary key yang ada ditabel pegawai akan menjadi
foreign key di tabel pelanggan.
2. Tabel pelanggan dan rute berelasi dengan kardinalitas many to one (N:1)
sehingga primary key yang ada ditabel rute akan menjadi foreign key di
tabel pelanggan.
3. Tabel rute dan maskapai berelasi dengan kardinalitas many to one (N:1)
sehingga primary key yang ada ditabel maskapai akan menjadi foreign key
di tabel rute.
Page 20
11
4. Tabel pelanggan dan pembayaran berelasi dengan kardinalitas one to one
(1:1) sehingga primary key yang ada ditabel pelanggan akan menjadi
foreign key di tabel pembayaran.
5. Tabel rute dan pembayaran berelasi dengan kardinalitas one to many
(1:N) sehingga primary key yang ada ditabel rute akan menjadi foreign key
di tabel pembayaran.
2.4 Hasil dan Pembahasan Tabel 2.4. 1 Query untuk menampilkan data dari semua kolom
select * from pelanggan;
Gambar 2.4. 1 Printscreen hasil running query dari tabel 2.4.1
Statement select dengan tanda bintang (*) digunakan untuk menampilkan data
dari seluruh kolom yang ada pada tabel pelanggan.
Tabel 2.4. 2 Query untuk menampilkan isi dari kolom tertentu select idrute, nama, tgl_pemesanan, tgl_berangkat
from pelanggan
Page 21
12
Gambar 2.4. 2 Printscreen hasil running query dari tabel 2.4.2
Query dalam tabel 2.4.2 digunakan untuk menampilkan data dari kolom idrute,
nama, tgl_pemesanan, dan tgl_berangkat pada tabel pelanggan.
Tabel 2.4. 3 Query untuk memberikan diskon 10% select idpembayaran, idrute, jumlah-(jumlah*0.1)
from pembayaran
Gambar 2.4. 3 Printscreen hasil running query dari tabel 2.4.3
Page 22
13
Query dalam tabel 2.4.3 digunakan untuk menampilkan data dari kolom
idpembayaran, idrute, dan jumlah dengan mendapatkan diskon 10% dari harga
normal pada tabel pembayaran.
Tabel 2.4. 4 Query untuk memberikan nama alias
select idrute "Id Rute", nama "Nama", tgl_pemesanan "Tgl
Pemesanan", tgl_berangkat "Tgl Keberangkatan"
from pelanggan
Gambar 2.4. 4 Printscreen hasil running query dari tabel 2.4.4
Query dalam tabel 2.4.4 digunakan untuk menampilkan data dengan memberikan
nama alias pada kolom idrute, nama, tgl_pemesanan, dan tgl_berangkat pada tabel
pelanggan.
Tabel 2.4. 5 Query untuk menampilkan data berdasarkan rute_idrute
select idrute, nama, tgl_pemesanan, tgl_berangkat
from pelanggan
where idrute = 'GA-R01'
Page 23
14
Gambar 2.4. 5 Prinscreen hasil running query dari tabel 2.4.5
Query dalam tabel 2.4.5 digunakan untuk menampilkan data dari tabel pelanggan
dimana idrute nya adalah GA-R01.
Tabel 2.4. 6 Query untuk menampilkan jumlah pembayaran antara 600 ribu dan 1 juta
select idpembayaran, idrute, jumlah
from pembayaran
where jumlah between 600000 and 1000000;
Gambar 2.4. 6 Printscreen hasil running query dari tabel 2.4.6
Query dalam tabel 2.4.6 digunakan untuk menampilkan data jumlah pembayaran
antara 600000 dan 1000000 dari tabel pembayaran.
Tabel 2.4. 7 Query untuk menampilkan jumlah dan rute_idrute tertentu
select idpembayaran, idrute, jumlah
from pembayaran
where (idrute = 'JT-R05' or idrute = 'SJ-R07') and jumlah >
700000;
Page 24
15
Gambar 2.4. 7 Printscreen hasil running query dari tabel 2.4.7
Query dalam tabel 2.4.7 digunakan untuk menampilkan data dari kolom
idpembayaran, idrute, dan jumlah dimana idrute nya adalah JT-R05 atau SJ-R07
dan memiliki jumlah pembayaran lebih dari 700000 pada tabel pembayaran.
Tabel 2.4. 8 Query untuk mengurutkan data pada kolom tgl_pemesanan secara ascending. select nama, tgl_pemesanan
from pelanggan
order by TGL_PEMESANAN asc
Gambar 2.4. 8 Printscreen hasil running query dari tabel 2.4.8
Page 25
16
Query dalam tabel 2.4.8 digunakan untuk menampilkan data dari kolom nama,
dan tgl_pemesanan dengan mengurutkan data tgl_pemesanan secara ascending
yaitu dari yang terkecil ke terbesar pada tabel pembayaran.
Tabel 2.4. 9 Query fungsi avg, max, dan sum select avg(jumlah), max(jumlah), sum(jumlah)
from pembayaran
where idrute like '%JT%';
Gambar 2.4. 9 Printscreen hasil running query dari tabel 2.4.9
Query dalam tabel 2.4.9 digunakan untuk menampilkan data pada kolom jumlah
dengan fungsi AVG, MAX, dan SUM dimana rute_idrute mengandung kata JT
dari tabel pembayaran. Fungsi AVG untuk menampilkan rerata data jumlah
pembayaran, fungsi MAX menampilkan data jumlah pembayaran yang paling
besar/tinggi, dan fungsi SUM untuk menjumlahkan seluruh data jumlah
pembayaran.
Tabel 2.4. 10 Query untuk mengelompokkan data tertentu
select idrute, sum(jumlah)
from pembayaran
group by idrute
Page 26
17
Gambar 2.4. 10 Prinscreen hasil running query dari tabel 2.4.10
Query dalam tabel 2.4.10 digunakan untuk menampilkan data pada kolom idrute
dan seluruh jumlah pembayaran yang dikelompokkan berdasarkan idrute dari
tabel pembayaran.
Tabel 2.4. 11 Query pengelompokkan data tertentu select idrute, max(jumlah)
from pembayaran
group by idrute
having max(jumlah)>=500000 and max(jumlah)<=800000
Gambar 2.4. 11 Printscreen hasil running query dari tabel 2.4.11
Query dalam tabel 2.4.11 digunakan untuk menampilkan data pada kolom idrute
dan maksimal jumlah pembayaran yang dikelompokkan berdasarkan idrute yang
mempunyai maksimal jumlah pembayaran lebih dari atau sama dengan 50000 dan
kurang dari atau sama dengan 800000 dari tabel pembayaran.
Page 27
18
Tabel 2.4. 12 Query dengan menggunakan natural join
select idpelanggan, idrute, jumlah
from pelanggan
natural join pembayaran
Gambar 2.4. 12 Printscreen hasil running query dari tabel 2.4.12
Query dalam tabel 2.4.12 digunakan untuk menampilkan data pada kolom
idpelanggan, idrute, dan jumlah dari tabel pelanggan dan tabel pembayaran
menggunakan NATURAL JOIN.
Tabel 2.4. 13 Query untuk mengelompokkan data dari dua tabel select idpelanggan, nama, idrute, kota_tujuan, kelas, harga
from pelanggan join rute
using (idrute)
order by idrute asc
Page 28
19
Gambar 2.4. 13 Printscreen hasil running query dari tabel 2.4.13
Query dalam tabel 2.4.13 digunakan untuk menampilkan data pada kolom
idpelanggan, nama, idrute, kota_tujuan, kelas, dan harga dari tabel pelanggan dan
tabel rute menggunakan KLAUSA USING dan diurutkan berdasarkan idrute
secara ascending. Kolom idrute digunakan untuk mengelompokkan data dari dua
tabel yang berbeda, Karen kolom idrute terdapat didua tabel tersebut.
Tabel 2.4. 14 Query menampilkan data dengan klausa ON select p.idpelanggan, p.nama, p.idrute, b.idrute, b.jumlah
from pelanggan p join pembayaran b
on (p.idrute = b.idrute)
Page 29
20
Gambar 2.4. 14 Printscreen hasil running query dari tabel 2.4.14
Query dalam tabel 2.4.14 digunakan untuk menampilkan data pada kolom
idpelanggan, nama, idrute, dan jumlah dari tabel pelanggan dan tabel pembayaran
menggunakan KLAUSA ON. Pada nama tabel pelanggan dan pembayaran
diberikan alias p dan b belakang nama tabel pada query tersebut. Lalu alias itu
juga diberikan pada kolom-kolom tertentu.
Page 30
BAB III
KESIMPULAN DAN SARAN
3.1 Kesimpulan
Dalam sebuah agen pemesanan tiket pesawat pastinya sangat
membutuhkan tempat penyimpanan data yang besar dan kompleks, maka
dibutuhkan database yang dapat menyimpang data-data tersebut. Database
Reservasi Tiket Pesawat ini dibuat untuk menyimpang berbagai data, seperti data
pelanggan, data pembayaran, data pegawai, dan lain-lain. Namun untuk database
yang kami buat ini, terdapat berbagai batasan salah satunya adalah data yang
mengenai data maskapai kami asumsikan sebagai data dari maskapai itu sendiri.
Diharapkan database ini dapat mempermudah suatu agen reservasi tiket pesawat
dalam mengelola usahanya.
3.2 Saran
Kami berharap Laboratorium Sistem Informasi dan Rekasaya Perangkat
Lunak (Sirkel) Jurusan Teknik Informatika Fakultas Teknologi Industri
Universitas Islam Indonesia kedepannya bisa lebih baik lagi, dari segi fasilitas
maupun kenyamanan didalam laboratorium dan kepada asisten pembimbing
supaya lebih interaktif dalam penyampaian materi agar praktikannya lebih
menguasai materi yang disampaikan.
Page 31
22
DAFTAR PUSTAKA
SIRKEL, Laboratorium. Modul Praktikum Basis Data. Laboratorium Sistem
Informasi dan Rekayasa Perangkat Lunak. 2010. Jurusan Teknik Informatika
Fakultas Teknologi Industri Universitas Islam Indonesia Yogyakarta.
Page 32
LAMPIRAN
Lampiran 1 : Lembar asistensi 1 dan 2
Lampiran 2 : Lembar pengesahan
Lampiran 3 : CD berisi script database program dan softcopy laporan dalam
format pdf.