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 10523144 Nama/NIM : Imam Abdul H. / 10523151
JURUSAN TEKNIK INFORMATIKA FAKULTAS TEKNOLOGI INDUSTRI UNIVERSITAS ISLAM INDONESIA 2011
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
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.
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.
iv
KATA PENGANTAR
Rasa syukur syukur yang dalam kami ucapkan kepada kepada Allah SWT, karena 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 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
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
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
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%.............................................. 10%.............................................. 12 Tabel 2.4. 4 Query untuk memberikan nama alias................................................ 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 ....................................................................................... ................................................... ...................... 15 ascending. .......................................................... Tabel 2.4. 9 Query fungsi avg, max, dan sum....................................................... 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
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.................................................................. 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
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, 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 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.
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.
BAB II HASIL DAN PEMBAHASAN
2.1 Desain ERD ( Entity Relationship Diagram) Nama Pegawai
Id Pegawai
Pegawai 1 Posisi
Gaji
Melayani Id Rute Waktu Berangkat Nama Pelanggan
Kota Asal
Id Pelanggan Tgl Berangkat
N
Pelanggan
No Telepon
Kota Tujuan
N
Waktu Tiba 1
Memilih
1
Rute 1
Kelas
N
Sisa Kapasitas
Tgl Pemesanan Usia
Harga Keterangan
Dimiliki Melakukan
Memiliki
1 Id Pembayaran
Maskapai
Tgl Pembayaran 1
N
Pembayaran
Id Maskapai Nama Maskapai
Jumlah Status Pembayaran 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.
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,
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).
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).
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).
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.
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).
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.
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 tgl_berangkat from pelanggan
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) jumlah-(jumlah*0.1) from pembayaran
Gambar 2.4. 3 Printscreen hasil running query dari tabel 2.4.3
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 tgl_berangkat from pelanggan where idrute = 'GA-R01'
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
700000;
=
'JT-R05'
or
idrute
=
'SJ-R07')
and
jumlah
>
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
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
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)<=80 max(jumlah)<=800000 0000
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.
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
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)
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.
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.
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.
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.