Upload
others
View
17
Download
0
Embed Size (px)
Citation preview
MODUL
Aplikasi Basis Data
Disusun Oleh:
Feri Prasetyo H.
Kata Pengantar
Puji Syukur kehadirat Tuhan Yang Maha Esa karena atas limpahan rahmat-Nya
sehingga kami dapat menyelesaikan modul Logika Algoritma Untuk Masiswa semester
2 matakuliah Aplikasi Basis Data. Pada modul ini diberikan contoh-contoh kasus untuk
mempermudah memahami konsep database dengan menanpilkan Xampp merupakan
suatu tools yang bersifat open source yang sering dipergunakan untuk pengembangan
aplikasi berbasis website yang didalamnya sudah menyediakan paket seperti Apache,
MySQL, MariaDB, PHP, phpMyAdmin, FileZilla, Tomcat, Xampp Control Panel,
dengan konsep mengunakan command prompt sebagai sarana penulisan script bahasa
SQL, dan Menggunakan PhpMyAdmin merupakan tools dengan Graphic User Interface
yang dapat memudahkan dalam pengelolaan database pada MySQL.
Kami menyadari masih banyak kekurangan dalam penyusunan modul ini. Oleh
karena itu, kami sangat mengharapkan kritik dan saran demi perbaikan dan
kesempurnaan modul ini.
Kami mengucapkan terima kasih kepada berbagai pihak yang telah membantu
proses penyelesain modul ini, Semoga modul ini dapat bermanfaat bagi kita semua,
khususnya para peserta didik.
Penulis
DAFTAR ISI
Kata Pengantar ii
Daftar Isi iii
Konsep Dasar Basis Data 1
MYSQL dan MariaDB 7
Data Definition Language 21
Data Manipulation Language 36
Data Manipulation Language II 52
Studi Kasus 67
Review Materi 82
Ujian Tengah Semester 83
PhpMyAdmin 84
Fungsi Join 100
Fungsi Join II 110
Review Materi 116
Daftar pustaka 120
1 | P a g e
BAB I
KONSEP DASAR BASIS DATA
Konsep Dasar Basis Data
Basis Data (Database) dapat dibayangkan sebagai sebuah lemari arsip. Jika kita
memiliki sebuah lemari arsip dan berwenang untuk mengelolanya. Atau kumpulan informasi
yang terorganisasi dan disajikan untuk tujuan khusus. Prinsip utama basis data adalah
pengaturan data atau arsip. Sedangkan tujuan utamanya adalah kemudahan dan kecepatan
dalam pengambilan data atau arsip. Sedangkan sistem basis data merupakan perpaduan antara
basis data dan sistem manajemen basis data (DBMS). DBMS (Database Management System)
adalah software yang menangani semua akses ke basis data. Contoh dari DBMS yaitu
Microsoft Access, MySQL, MariaDB, Oracle, Server 2000, Interbase, Paradox, dan Lain-Lain.
Berikut susunan umum hierarki pada suatu basis data:
Berikut penjabaran dari struktur basis data diatas:
1. Karakter
Merupakan bagian terkecil dalam database, dapat be rupa karakter numerik (angka 0 s/d
9), huruf (A-Z, a-z) ataupun karakter-karakter khusus seperti *, &, %, #, dan lain-lain.
2 | P a g e
2. Field
Merupakan bagian dari record yang menunjukkan suatu item data yang sejenis, misalnya
field nama, field nim, dan lain sebagainya. Setiap field harus mempunyai nama dan tipe data
tertentu. Isi dari field disebut Data Value. Dalam database, field ini disebut juga kolom.
3. Record
Merupakan kumpulan data value dari attribute yang berkaitan sehingga dapa menjelaskan
sebuah entity secara lengkap. Misalnya record entity mahasiswa adalah kumpulan data
value dari field. Dalam database, record disebut juga baris.
4. Tabel
Entity merupakan sesuatu yang dapat diidentifikasi dari suatu sistem database, bisa berupa
objek, orang, tempat, kejadian atau konsep yang informasi nya akan disimpan dalam
database. Dalam aplikasi, penggunaan istilah entity sering disamakan dengan istilah tabel.
Disebut tabel, karena dalam mempresentasikan datanya diatur dalam bentuk baris dan
kolom. Baris mewakili 1 record dan kolom mewakili 1 field. Dalam sistem database
tradisional, entity/tabel ini disebut juga dengan file.
5. Database
Kumpulan dari tabel-tabel yang saling berelasi, disusun secara logis sehingga menghasilkan
informasi yang bernilai guna dalam proses pengambilan keputusan.
BASIS DATA (DATA BASE) adalah himpunan kelompok data /kumpulan data yang saling berhubungan
secara logis dan deskripsinya, yang disimpan secara bersama sedemikian rupa dan dirancang untuk memenuhi
kebutuhan informasi organisasi.
Prinsip Dan Tujuan Basis Data
- Prinsip utamanya adalah pengaturan data/arsip.
- Tujuan utamanya adalah kemudahan dan kecepatan dalam pengambilan data/arsip. Yang sangat
3 | P a g e
ditonjolkan dalam basis data adalah pengaturan, pemilahan, pengelompokkan, pengorganisasian data
yang akan kita simpan sesuai fungsi/jenisnya. Pengorganisasian data tersebut dapat dalam bentuk
tabel terpisah atau dalam bentuk pendefinisian kolom (field) data dalam setiap tabel.
Sistem Basis Data
Sistem adalah sebuah tatanan yang terdiri atas sejumlah komponenfungsional yang saling berhubungan dan
secara bersama-sama bertujuan untuk memenuhi suatu proses tertentu.
Contoh : Sistem = kendaraan Komponen fungsional= pemantik/starter (untuk memulai pengapian),
komponen pengapian (untuk pembakaran BBm yang membuat torak bekerja), dst.
- Basis data hanyalah sebuah objek yang pasif.
- Software/ aplikasi/ program adalah penggerak atau pengelolanya. –Sistema dalah gabungan dari ke
duanya. Sistem Basis Data merupakan sistem yang terdiri atas kumpulan tabel data yang saling
berhubungan dan sekumpulan program (DBMS) yang memungkinkan beberapa pemakai dan/ atau
program lain untuk mengakses dan memanipulasi tabel-tabel data tersebut.
DBMS adalah perangkat lunak yang memungkinkan pemakai untuk mendefinisikan, mengelola, dan
mengontrol akses kebasis data. DBMS yang mengelola basis data relational disebut dengan Relational DBMS
(RDBMS)
Contoh perangkat lunak yang termasuk DBMS: dBase, FoxBase, Rbase, Microsoft-Access, Borland Paradox/
Borland Interbase, MS-SQLServer, Oracle, Informix, Sybase, MySQL, dll.
4 | P a g e
Contoh penjabaran struktur basis data:
Nama Database : mahasiswa_bsi Nama Tabel : mahasiswa
Value (Nilai dari suatu Field yang terdiri dari karakter- karakter)
Record Ke-1
Record Ke-2
Record Ke-3
Field nim Field nama Field alamat
Nama Tabel : Matakuliah
kd_matkul nm_matkul Sks
CPP Borland C++ 4
ABD Aplikasi Basis Data 4
VBS Visual Basic I 4
Instalasi Xampp
Untuk pembelajaran pada modul aplikasi basis data ini menggunakan software
XAMPP. Untuk lebih lanjut mengenai berbagai produk xampp, silahkan kunjungi situs
https://www.apachefriends.org/index.html. Xampp merupakan suatu tools yang bersifat open
source yang sering dipergunakan untuk pengembangan aplikasi berbasis website yang
didalamnya sudah menyediakan paket seperti Apache, MySQL, MariaDB, PHP,
phpMyAdmin, FileZilla, Tomcat, Xampp Control Panel. Xampp sendiri telah tersedia juga
untuk platform Windows mauppun Linux.
nim Nama alamat
12140001 Helga Elzar Adha Cawang
12140002 Rifky Zarel Putra Jatiwaringin
11140003 Fikri Putra Zarel Kaliabang
5 | P a g e
Versi xampp yang digunakan dalam modul praktikum ini adalah xampp minimal versi
5.6.3 dengan extensi PHP telah mendukung mysqli dan server MariaDB.
Note :
1. Untuk memudahkan pembelajaran instalasi xampp berada pada Localdisk C:\, setelah
instalasi selesai pindahkan xampp control panel pada Taskbar Laptop/PC dengan cara
masuk ke Explore, lalu arahkan ke lokasi penyimpanan saat Instalasi (pada contoh, saat
instalasi memilih Lokasi di C:/xampp). Kemudian cari file aplikasi bernama xampp-
control, lalu klik kanan pada file tersebut dan pilih Pin to Taskbar, seperti gambar
dibawah ini:
2. Lalu periksa Xampp Control Panel dengan menjalankannya pastikan tab MySQL dan
Apache dalam kondisi Running.
6 | P a g e
3. Untuk memastikan kembali, silahkan buka web browser lalu ketikan dengan alamat
http://localhost/xampp/ , jika berhasil tampil halaman pembuka xampp maka instalasi
dikatakan berhasil pada Laptop/PC.
7 | P a g e
BAB II
MYSQL dan MariaDB
Pengenalan MySQL dan MariaDB
MySQL adalah sebuah program database server yang mampu menerima dan
mengirimkan datanya dengan sangat cepat, multi user serta menggunakan perintah standar
SQL (Structure Query Language).
MySQL merupakan hasil ciptaan dari Michael “Monty” Widenius, David Axmark,
dan Allan Larson. Pada tahun 1995 mereka lalu mendirikan perusahaan bernama MySQL AB
di Swedia. Tujuan awal diciptakannya MySQL yaitu untuk mengembangkan aplikasi web
yang akan digunakan oleh salah satu klien MySQL AB. Database MySQL, biasa kita baca
mai-es-ki-el merupakan perangkat lunak database yang berbentuk database relasional atau
dalam bahasa basis data sering disebut dengan Relation Database Management System
(RDBMS) yang menggunakan suatu bahasa permintaan bernama SQL. Perbedaan antara
MySQL dan SQL, MySQL adalah program database server sedangkan SQL adalah bahasa
yang digunakan didalamnya.
Seiring akuisisi dan dimilikinya MySQL oleh Oracle, maka para pengembang awal
MySQL membangun sebuah sistem manajemen database baru yang dinamakan MariaDB.
Sehingga bisa dikatakan MariaDB merupakan open source pengembangan dari MySQL yang
full free. Xampp sendiri telah mengganti database MySQL dengan MariaDB sejak versi 5.5.3.
Sehingga modul praktikum ini menggunakan basis data dengan Jenis Server MariaDB.
Pengenalan Command Prompt
Basis Data terdapat dalam paket instalasi xampp yang telah dibahas pada bahasan
sebelumnya. Letak lokasi tersimpannya database berada pada direktori C:\xampp\mysql\data
(jika instalasi xampp berada pada localdisk C:\).
8 | P a g e
Pada pembelajaran ini, menggunakan media command prompt sebagai sarana
penulisan script bahasa SQL. Untuk membuka command prompt pada Laptop/PC bisa
menggunakan berbagai cara, berikut salah satu caranya:
1. Pilih menu Start -> All Programs -> Accessories Kemudian Pilih Command Prompt.
2. Klik Kanan pada command prompt atau cmd, lalu pilih Run as administrator.
3. Berikut tampilan command prompt saat terbuka:
4. Untuk memodifikasi tampilan dari command prompt, bisa dengan cara klik kanan pada
kotak dialog, kemudian pilih properties.
5. Pengaturan modifikasi dapat melalui tab Options, Font, Layout, Colors pada properties
command prompt. Berikut hasil modifikasi tampilan yang telah dilakukan:
9 | P a g e
Menjalankan MariaDB dengan Command Prompt
Dalam modul Aplikasi Basis Data ini, diasumsikan Instalasi Xampp berada pada
Localdisk C. Perintah dibawah ini adalah untuk masuk kedalam MariaDB dengan user root.
Saat command prompt telah dijalankan, ketikan perintah seperti dibawah ini:
1. Ketikan perintah cd c:\ (lalu kemudian tekan Enter)
2. Lalu ketikan perintah “xampp/mysql/bin/mysql.exe” –u root -p (lalu kemudian tekan
Enter)
3. Pada saat diminta untuk memasukkan password (saat instalasi xampp, secara default
tidak ada password), tekan Enter pada keyboard (menandakan tidak ada password saat
memasuki user root).
4. Langkah lain, apabila memasuki mariadb dengan user root dan sudah dipastikan tidak ada
password pada root (tanpa menuliskan “–p”), dapat menggunakan perintah dibawah ini:
10 | P a g e
Aturan Penulisan Perintah pada Command Prompt
Hampir sebagian besar perintah sql dengan command prompt diakhiri dengan titik
koma (;). Sebagai contoh perintah untuk melihat daftar database yang ada pada suatu user yaitu
show databases; apabila perintah diketik lengkap maka perintah berhasil dijalankan, namun
apabila kita belum menyelesaikan ketikan perintah maka secara otomatis command prompt
akan meminta untuk mengetikkan perintah yang kurang. Seperti pada contoh berikut ini:
Pada perintah show databases; yang pertama tertulis lengkap dan perintah berhasil
dijalankan. Namun pada perintah yang kedua ketika kurang mengetikkan titik koma (;) lalu
ditekan Enter pada keyboard, maka command prompt akan meminta kembali perintah yang
kurang dan kita akan mengetikan perintah tersebut pada baris dibawahnya.
Selain itu untuk memudahkan pembelajaran, command prompt memungkinkan fasilitas
short key pada keyboard “agar pengetikan perintah yang sama tidak diketik ulang
kembali” dengan menekan tombol tanda panah keatas/kebawah pada keyboard.
11 | P a g e
Mengenal User Dalam Basis Data
Didalam Basis Data dapat terdiri dari beberapa user tergantung kebutuhan dari basis
data. Sedangkan user tertinggi biasa disebut dengan istilah root, itu sebabnya sebagai langkah
awal kita menjalankan MariaDB dengan command prompt menggunakan user root.
Ketika sudah masuk kedalam MariaDB dengan user root, ketikkan beberapa perintah
dibawah ini:
show databases; (perintah ini digunakan untuk melihat daftar database pada user
yang sedang login, dalam kasus ini user tertinggi root, maka seluruh database pada MariaDB
akan terbuka). Note : Pengetikan script selalu diakhiri oleh titik koma “;”
Use mysql; (perintah „use‟ digunakan untuk mengaktifkan suatu database)
Select user, host from mysql.user; (perintah ini digunakan untuk elihat/menampilkan
daftar user yang ada pada database)
12 | P a g e
Membuat dan Menghapus User Dalam Basis Data
Untuk membuat dan menghapus user yang ada dalam Basis Data harus masuk
menggunakan user root (user tertinggi), kemudian dengan mengetikan perintah dibawah ini:
create user „user1‟@‟localhost‟; (membuat user tanpa password)
create user „user2‟@‟localhost‟ identified by „123‟; (membuatu serdengan
password=”123”)
Untuk mengecek user yang telah dibuat, silahkan login menggunakan user tersebut,
namun terlebih dahulu harus keluar dari root dengan perintah exit;
exit; (perintah untuk keluar dari mysql)
"xampp/mysql/bin/mysql.exe" -u user1 (perintah masuk sebagai user1 tanpa
password)
"xampp/mysql/bin/mysql.exe" -u user2 –p123 (perintah masuk sebagai user2
dengan password=123)
13 | P a g e
Perhatikan perbedaan daftar database ketika masuk sebagai user biasa dengan user root.
Ketika sudah berhasil membuat user, tampilkan kembali daftar user pada mysql dengan
mengetik perintah “select user, host from mysql.user;“ (baca kembali materi yang telah
dibahas sebelumnya)
Sementara, apabila kita ingin menghapus suatu user, gunakan perintah “drop” dengan
posisi user adalah root, seperti contoh kita akan menghapus “user1” berikut ini:
14 | P a g e
Membuat Database dan Tabel Sederhana
Sebagai contoh pembuatan database dan tabel, user yang akan kita gunakan adalah
root. Berikut langkah-langkahnya:
Masuk kedalam MariaDB dengan user root
Setelah masuk MariaDB, ketikan perintah berikut:
Lihat hasilnya dengan perintah show databases;
Lalu, untuk membuat tabel terlebih dahulu kita aktifkan database db_latihan1 dengan
perintah use. (Tabel adalah bagian dari suatu Database, oleh sebab itu pembuatannya harus
berada didalam suatu database yang diaktifkan terlebih dahulu).
Perintah untuk membuat tabel, yaitu dengan perintah create table nama_tabel (spesifikasi
tabel); (spesifikasi tabel dan tipe data akan dibahas pada bahasan selanjutnya)
Untuk melihat daftar tabel pada suatu database, gunakan perintah show tables;
15 | P a g e
Sedangkan perintah untuk melihat struktur tabel, gunakan perintah desc mhs; atau
describe mhs;
Memberi Hak Akses (Privileges) pada user
Setelah kita mempelajari tentang root, membuat dan menghapus user biasa, membuat
database dan tabel. Sekarang kita akan membahas mengenai hak akses pada user.
Pada suatu aplikasi database mysql, terkadang terdiri dari beberapa user yang dapat
mengkases suatu database namun tidak semua memiliki hak akses penuh untuk melihat,
merubah, atau menambahkan data record kedalam tabel-tabel yang ada pada database tersebut.
Untuk itulah, diperlukan adanya hak akses (Privileges) terhadap database untuk user-user yang
ada. Pemberian hak akses user hanya bisa dilakukan melalui root (user tertinggi). Berikut
struktur perintah pemberian hak akses pada user:
grant hak_akses on nama_database.nama_tabel to ‘nama_user’@’lokasi_user’;
Penjelasan:
- Grant -> perintah memberikan hak akses pada user
- Hak_akses -> hak akses yang diperbolehkan bisa untuk melihat, merubah, menambah,
atau bisa diberikan hak akses penuh.
- Nama_database -> database yang akan diberikan hak akses. Jika ingin memberikan hak
akses terhadap seluruh database yang ada diganti penulisnnya dengan tanda bintang (*).
- Nama_tabel -> tabel yang akan diberikan hak akses. Jika ingin memberikan hak akses
terhadap seluruh tabel dari suatu database yang ada diganti penulisnnya dengan tanda
16 | P a g e
bintang (*).
- Nama_user -> nama user yang akan diberi hak akses.
- Lokasi_user -> lokasi user yang akan diberi hak akses.
Sebagai contoh, kita telah memiliki user bernama user2, database bernama db_latihan1,
tabel bernama mhs.
Jika kita ingin memberikan hak akses user2 hanya bisa melihat tabel mhs, maka
perintah yang ada yaitu:
grant select on db_latihan1.mhs to „user2‟@‟localhost‟;
Jika didalam database db_latihan1 terdiri dari banyak tabel, dan akan diberikan hak
akses seluruh tabel kepada user2, perintahnya menggunakan tanda bintang (*).
grant select on db_latihan1.* to „user2‟@‟localhost‟;
Jika kita ingin memberikan hak akses user2 secara penuh (melihat, menambah,
merubah) terhadap tabel pada database db_latihan1, maka perintahnya menggunakan perintah
„all‟
grant all on db_latihan1.* to „user2‟@‟localhost‟;
Untuk melihat hasilnya keluar terlebih dahulu dari root, kemudian masuk sebagai user2:
17 | P a g e
Setelah kita mempraktikan mengenai user dan memberi hak akses terhadap user. Maka
selanjutnya akan dibahas mengenai jenis-jenis tipe data yang sering dipakai pada database.
Tipe Data String
Tipe data string yang berisi nilai berupa karakter atau huruf. Beberapa tipe data string
yang mendukung database MariaDB, yaitu, CHAR, VARCHAR, BINARY, VARBINARY,
TEXT, BLOB. Berikut penjabarannya:
Char, yaitu tipe data yang disarankan bila digunakan untuk field tabel yang nantinya
memiliki isi data dengan jumlah karakter yang tetap. Misal field “nim” pada tabel
mahasiswa dengan size 8, dimana isi data tabel untuk nim akan tetap jumlah seluruh
karakternya 8 digit karakter, tidak ada nim yang jumlah karakternya 9 karakter.
(contoh nim=‟12161717‟,‟12171818‟,‟12181717‟, isi data field nim selalu tetap
berjumlah 8 karakter).
Varchar, berbeda dengan char, tipe data varchar disarankan apabila field tabel akan berisi
data dengan jumlah karakter yang tidak tetap. Misal field nama, alamat, no_telp, dimana
jumlah isi data pada untuk field-field tersebut biasanya tidak tetap.
(contoh nama=‟budi santoso‟,‟rio kurnia‟,‟susanti‟, isi data field nama tidak
selalu sama).
Binary dan Varbinary, Sebenarnya kedua tipe data ini memiliki konsep yang hampir
sama dengan char dan varchar. Yang membedakannya adalah struktur penyimpanan akan
disimpan secara biner. Misal, suatu tipe data bertipe binary, yaitu kode dengan isi data =
„A‟. jika char menyimpannya sebagai karakter „A‟, maka binary akan menyimpannya
sebagai biner dari karakter A, yaitu 65.
Text, apabila suatu tipe data membutuhkan isi data yang harus bisa menampung jumlah
karakter yang banyak, maka disarankan untuk tidak menggunakan char maupun varchar,
18 | P a g e
tetapi gunakan tipe data Text. Tipe data text terbagi kedalam beberapa tipe data, yaitu,
TINITEXT (jumlah karakter maksimum 255), TEXT (jumlah karakter maksimum
6.5535), MEDIUMTEXT (jumlah karakter maksimum 16.777.215). LONGTEXT
(jumlah karakter maksimum 4.294.967.295).
(contoh field komentar yang bisa berisi dari banyak karakter dan berjumlah
tidak pasti, maka disarankan menggunakan tipe data berjenis TEXT).
Blob, tipe data ini memiliki konsep yang sama dengan tipe data TEXT, namun memiliki
struktur penyimpanan seperti binary, atau menyimpan secara biner karakter yang
disimpan kedalam filed. Terdiri dari TINYBLOB, BLOB, MEDIUMBLOB,
LONGBLOB. Sehingga bisa dikatakan tipe data blob merupakan versi biner dari tipe data
Text.
Tipe Data Numeric
Tipe data ini digunakan untuk menampung angka-angka yang dapat dilakukan untuk
manipulasi perhitungan. Berikut beberapa diantaranya:
Integer, tipe data untuk menampung angka berupa bilangan bulat. Tipe data ini terdiri dari
beberapa jenis yang tergambar dalam tabel berikut ini:
Misal, jika kita membutuhkan tipe data yang dapat menampung data angka hingga satuan
jutaan atau lebih untuk 1 isi data bisa menggunakan tipe data integer, namun jika hanya
menampung jumlah yang lebih sedikit bisa menggunakan smallint atau tinyint. Deklarasi
Tipe Data Jangkauan SIGNED Jangkauan UNSIGNED Ukuran
TINYINT -128 to 127 0 to 255 1 byte
SMALLINT -32,768 to 32,767 0 to 65,535 2 bytes
MEDIUMINT -8,388,608 to 8,388,607 0 to 16,777,215 3 bytes
INT -2,147,483,648 to 2,147,483,647
0 to 4,294,967,295 4 bytes
BIGINT -9,223,372,036,854,775,808 to
9,223,372,036,854,775,807
0 to
18,446,744,073,709,551,615
8 bytes
19 | P a g e
TUGAS 1
MATA KULIAH APLIKASI BASIS DATA
Soal dikerjakan pada akhir pembahasan Pertemuan 2 (Setelah materi
contoh bab 2 selesai dikerjakan)
Jawaban berupa hasil pengerjaan perintah sql disimpan dalam bentuk
screenshot tampilan.
Soal dan Jawaban dikumpulkan pada perkuliahan Pertemuan 3
Signed dan Unsigned dapat digunakan apabila isi data ingin bernilai negatif (signed) atau
isi data seluruhnya bertipe positif (unsigned).
Decimal (Fixed Point), tipe data yang menampung angka decimal dengan nilai pecahan
yang tetap.
Format penulisan -> DECIMAL(M[,D]). Misal suatu tipe data bernama berat
dideklarasikan sebagai berikut,
berat DECIMAL(4,2). Maka, berarti isi data akan memuat 4 digit angka, dengan 2 angka
didepan koma dan 2 angka dibelakang koma. Contoh, „12,30‟,‟14.50‟, dsb.
Float dan Double (Floating Point), kedua tipe data ini juga dapat menampung angka
decimal, namun perbedaan dengan tipe data decimal (fixed point) adalah keakuratan dalam
pembacaan prosesor komputer terhadap nilai pecahan.
1. Buka aplikasi Command Prompt pada komputer anda. (Disarankan untuk membuka dari
tahap awal).
2. Masuklah kedalam MariaDB menggunakan user root.
3. Tampilkan daftar database yang ada pada MariaDB.
4. Tampilkan daftar user pada MariaDB.
5. Buat user baru pada localhost dengan nama “NIMmasing-masing_coba2” dengan
password “12345”.
Contoh : Jika NIM mahasiswa = 12181234, maka user = 12181234_coba2
20 | P a g e
6. Buat user baru pada localhost dengan nama “ NIMmasing-masing_cobalagi” tanpa
password.
7. Tampilkan kembali daftar user pada MariaDB.
8. Masih didalam user root, Buat Database dengan nama “db_ NIMmasing-masing_coba”.
9. Aktifkan database db_NIMmasing-masing_coba, lalu buat dua buah tabel didalamnya.
Tabel 1 dengan nama “buku”:
Field Type Size
Kd_buku Char 5
Judul Varchar 40
Penulis Varchar 35
Penerbit Varchar 35
Tabel 2 dengan nama “katalog”
Field Type Size
Kode Char 6
Nama Varchar 30
10. Tampilkan daftar tabel yang ada pada database db_coba.
11. Tampilkan struktur tabel buku dan katalog.
12. Beri hak akses penuh database db_NIMmasingmasing_coba kepada user
“NIMmasingmasing_coba2”.
13. Hapus user “NIMmasingmasing_cobalagi”, lalu keluar dari root.
14. Masuk kedalam MariaDB menggunakan user “NIMmasingmasing_coba2”.
15. Tampilkan daftar database pada NIMmasingmasing_coba2.
21 | P a g e
BAB III
DATA DEFINITION LANGUAGE
Data Definition Language merupakan kumpulan perintah atau query SQL yang
digunakan untuk membuat, merubah, serta dapat pula menghapus dari suatu struktur dan
definisi tipe data dari objek-objek, seperti tabel yang ada pada suatu database.
Dibawah ini terdapat latihan-latihan praktikum Data Definition Language, dimana
untuk kemudahan pembelajaran user yang dipakai adalah root.
Latihan Praktikum Data Definition Language 1
1. Masuk kedalam MariaDB melalui command prompt.
2. Buat dua buah database masing-masing dengan nama “komik_coba1” dan
“komik_cobalagi”.
3. Tampilkan seluruh daftar database yang ada.
22 | P a g e
4. Hapus database “komik_cobalagi”.
5. Aktifkan database komik_coba1.
6. Tampilkan daftar tabel pada database komik_coba1.
7. Buat 3 buah tabel, dengan ketentuan sebagai berikut: Tabel “anggota” :
Field Name Type Size Keterangan
Id_anggota Char 4 Primary Key
Nama Varchar 20
Alamat Varchar 30
No_telp Varchar 15
Tgl_lahir Date -
23 | P a g e
(Primary Key adalah kunci utama dari suatu tabel, bersifat unik dan tidak boleh ada
isi record yang sama/ganda). Saat membuat suatu tabel, field-field yang ada dapat diberikan
nilai „not null‟ untuk memberikan validasi saat pengisian record tidak boleh kosong datanya.
Penggunaan atribut not null disesuaikan dengan kebutuhan, namun secara default mysql akan
memberikan nilai „null‟.
Tabel “komik” :
Field Name Type Size Keterangan
Id_komik Char 5 Primary Key
Judul Varchar 25
Pengarang Varchar 30
Thn_terbit Year -
Jenis_komik Varchar 15
24 | P a g e
Tabel “pinjam” :
Field Name Type Size Keterangan
No_pinjam Int 4
Id_anggota Char 4
Id_komik Char 5
Jumlah Int 2
8. Tampilkan daftar tabel yang ada pada database.
25 | P a g e
9. Buka struktur tabel dari masing-masing tabel yang telah dibuat.
10. Hapus primary key pada tabel anggota.
26 | P a g e
11. Buat field baru pada tabel anggota, yaitu, “tgl_daftar” dengan type = “date”.
12. Ubah nama tabel “anggota” menjadi “anggota_warnet”.
13. Buat field baru pada tabel komik, yaitu, “status” dengan type = “varchar” dan size =
“10”.
27 | P a g e
14. Lihat struktur tabel pinjam.
15. Beri Primary Key pada field “no_pinjam” pada tabel pinjam.
16. Lihat kembali struktur tabel pinjam.
17. Ubah nama tabel “pinjam” menjadi “transaksi”.
28 | P a g e
18. Buat primary key pada field “id_anggota” pada tabel anggota_warnet.
19. Hapus field ”jenis_komik” pada tabel komik.
20. Ganti field “jumlah” pada tabel transaksi menjadi “jml_komik” type=”Int” Size=”4”.
29 | P a g e
Latihan Praktikum Data Definition Language 2
1. Masuk kedalam MariaDB melalui command prompt.
2. Buat database dengan nama “db_les_private”, kemudian tampilkan seluruh daftar
database yang ada.
3. Aktifkan database db_les_private.
4. Buat sebuah tabel dengan nama “siswa”, ketentuan tabel sebagai berikut:
Field Name Type Size Keterangan
Nis Char 6 Primary Key
Nama Varchar 40
Tgl Date -
30 | P a g e
Kelas Varchar 15
No_telp Varchar 18
5. Lihat daftar tabel pada database db_les_private.
6. Lihat struktur tabel pada tabel siswa.
7. Ubah field “nama” pada tabel siswa menjadi “nama_siswa” type=”varchar” Size=”30”.
31 | P a g e
8. Ubah field “tgl” pada tabel siswa menjadi “tgl_lahir” (Type dan Size tidak berubah).
9. Ubah field “kelas” pada tabel siswa menjadi “kelas_siswa” type=”varchar” Size=”20”.
10. Hapus field “no_telp” pada tabel siswa.
32 | P a g e
11. Ubah nama tabel “siswa” menjadi “siswa_baru”.
12. Lihat kembali struktur tabel siswa_baru.
13. Buat kembali 2 buah tabel dengan ketentuan sebagai berikut:
Tabel “tutor” :
Field Name Type Size Keterangan
Id_tutor Char 8
Nama_tutor Varchar 30
Jenis Varchar 20
Jml_kelas Smallint 4
33 | P a g e
Tabel “ruang” :
Field Name Type Size Keterangan
Id_ruang Char 3
Nama_ruang Varchar 10
14. Lihat struktur tabel tutor dan ruang.
34 | P a g e
15. Buat primary key untuk “id_tutor” pada tabel tutor.
16. Ubah “tipe data” dari field “jml_kelas” pada tabel tutor menjadi int(4).
17. Tampilkan struktur tabel ruang, kemudian Ubah “tipe data” dari field “id_ruang” pada
tabel ruang menjadi “Int”.
35 | P a g e
18. Hapus tabel “ruang” dari database db_les_private.
19. Ubah nama tabel “tutor” menjadi “tutor_les”.
20. Lihat kembali daftar tabel yang ada pada database db_les_private.
36 | P a g e
BAB IV
DATA MANIPULATION LANGUAGE
Berbeda dengan DDL yang berhubungan dengan struktur tabel pada bahasan
praktikum sebelumnya. Maka, Data Manipulation Language merupakan kumpulan perintah
atau query SQL yang digunakan untuk mengelola isi data didalam tabel-tabel pada suatu
database, seperti menampilkan data, memasukan data, merubah isi data, serta menghapus isi
data.
Dibawah ini terdapat latihan-latihan praktikum Data Manipulation Language, dengan
berbagai variasi-variasi query.
Latihan Praktikum Data Manipulation Language 1
1. Masuk kedalam MariaDB melalui command prompt.
2. Buat sebuah database dengan nama “db_latihan_dml”, kemudian tampilkan seluruh
daftar database yang ada.
3. Aktifkan database db_latihan_dml.
37 | P a g e
4. Buat tabel bernama “buku”, dengan ketentuan sebagai berikut:
Field Name Type Size Keterangan
Id_buku Char 4 Primary Key
Judul_buku Varchar 45
Penulis Varchar 25
Thn_terbit Year -
Penerbit Varchar 45
5. Lihat struktur tabel buku.
6. Isikan data untuk tabel buku, dengan data sebagai berikut:
Id_buku Judul_buku Penulis Thn_terbit Penerbit
BK01 Perahu Kertas Dewi Lestari 2007 Abadi Jaya
BK02 Laskar Pelangi Andrea Hirata 2004 Abadi Jaya
38 | P a g e
BK03 Sang Pemimpi Andrea Hirata 2005 Abadi Jaya
BK04 Harry Potter 4 J.K.Rowling 2003 Indo Karya
BK05 Warnet SQL DR. Nena 2009 Wacana Ria
7. Tampilkan isi seluruh record pada tabel buku.(gunakan tanda * bila seluruh field
ditampilkan)
8. Tampilkan isi record tabel buku, hanya buku dengan penerbit = “Abadi Jaya”.
39 | P a g e
9. Tampilkan isi record dengan pengelompokan data berdasarkan penerbit. (data yang
sama pada penerbit tidak akan dipanggil kembali, disebut juga Ascending)
10. Tampilkan isi record dengan pengurutan data berdasarkan penerbit. (secara default
pengurutan secara ascending dari A ke Z).
11. Tampilkan isi record hanya field “judul_buku”, “penulis”, “thn_terbit”.
40 | P a g e
12. Tampilkan isi record dengan Penulis bernama depan huruf= “A”. (pencarian data
menggunakan like.
13. Tampilkan isi record dengan Tahun terbit dibawah tahun 2005.
14. Tampilkan isi record dengan Judul buku mengandung kata “SQL”.
41 | P a g e
15. Tampilkan isi record, dengan penulis = “Dewi Lestari”.
16. Tampilkan isi record hanya field “judul_buku”, “penulis”, kemudian urutkan data
berdasarkan penulis.
17. Tampilkan isi record hanya field “judul_buku”, “penulis”, kemudian urutkan data
berdasarkan penulis secara descending.
42 | P a g e
18. Tampilkan isi record hanya field “judul_buku”, “penulis”, “thn_terbit”, dengan tahun
terbit dibawah tahun 2005.
19. Tampilkan isi record hanya field “judul_buku”, “penulis”, “thn_terbit”,
“penerbit”, dengan tahun terbit dibawah tahun 2005, lalu urutkan berdasarkan
“thn_terbit” secara descending.
20. Tampilkan isi record hanya field “judul_buku”, “penulis”, “penerbit”, dengan penulis
= “Andrea Hirata”, lalu urutkan secara descending berdasarkan “judul_buku”.
43 | P a g e
Latihan Praktikum Data Manipulation Language 2
Pada lanjutan praktikum DML ini, akan dibahas penggunaan operator-operator yang
sering digunakan didalam database mysql. Berikut diantaranya:
Operator Aritmatika:
Operator Keterangan
+ Penjumlahan
- Pengurangan
* Perkalian
/ Pembagian
% Sisa Hasil Bagi (modulus)
Operator Pembanding:
Operator Keterangan
= Sama Dengan
!= , <> Tidak sama dengan
> Lebih besar
< Lebih Kecil
>= Lebih besar sama dengan
<= Lebih kecil sama dengan
Between Berada diantara
In Berada didalam
44 | P a g e
Operator Logika:
Operator Keterangan
And atau && Data Benar, bila kedua pembanding bernilai benar
Not atau !
Data Benar, bila data bernilai salah/tidak sesuai
dengan nilai pembanding
Or atau ||
Data Benar, bila salah satu data bernilai benar,
atau keduanya bernilai benar
Xor
Data dianggap benar jika hanya data pertama yang
bernilai benar
Selain operator-operator tersebut, terdapat pula perintah LIMIT, untuk membatasi
dalam menampilkan data per baris pada suatu tabel, dengan bentuk penulisan:
LIMIT baris_awal, jumlah_baris
Berikut ini Latihan Praktikum Lanjutan untuk perintah DML:
1. Masuk kedalam MariaDB melalui command prompt.
2. Aktifkan kembali database yang telah dibuat dilatihan sebelumnya dengan nama
“db_latihan_dml”.
3. Tampilkan daftar tabel yang ada.
45 | P a g e
4. Buat tabel bernama “member”, dengan ketentuan sebagai berikut:
Field Name Type Size Keterangan
Id_member Char 5 Primary Key
Nama_member Varchar 40
Alamat Varchar 75
Semester Char 2
Usia Char 2
5. Lihat struktur tabel member.
6. Isikan data untuk tabel member, dengan data sebagai berikut:
Id_member Nama_member Alamat Semester Usia
01001 Tio Ferdinand Jl. Serpong Raya No.11 4 21
01002 Amad Sanches Jl. Cilenggang No.20 3 20
46 | P a g e
01003 Riki Bahagia Jl. Hutama Karya No.03 4 20
01004 Rere Kurnia Jl. Smapal Serpong 167 2 19
01005 Erni Susanti Jl. Nusa Loka 11 - BSD 1 18
01006 Loki Nurdin Jl. BSD Raya No.20 1 18
7. Tampilkan isi seluruh record pada tabel member.
47 | P a g e
8. Tampilkan isi record dengan Nama member bernama = “Erni Susanti”.
9. Tampilkan isi record dengan usia = “dibawah 21 Tahun”.
10. Tampilkan isi record, kecuali member bernama = “Rere Kurnia”.
48 | P a g e
11. Tampilkan isi record hanya field “nama_member”, “semester”, kemudian urutkan data
berdasarkan semester.
12. Tampilkan isi record hanya field “nama_member”, “semester”, “usia”, dimana usia
berada “diantara 19-20 tahun”.
13. Tampilkan isi record dengan usia = “diatas 18 Tahun” dan semester = “diatas semester
2”.
49 | P a g e
14. Tampilkan isi record dengan usia = “diatas 18 Tahun” atau semester = “diatas semester
2”.
15. Tampilkan isi record hanya field “nama_member”, “alamat”, dimana member bernama
depan huruf = “R”, kemudian urutkan data berdasarkan nama_member.
16. Tampilkan isi record hanya field “nama_member”, “alamat”, “usia”, dimana usia berada
“diatas 18 tahun”, kemudian urutkan data secara descending berdasarkan nama_member.
50 | P a g e
17. Tampilkan 4 isi record teratas dari tabel member. (gunakan perintah LIMIT)
18. Tampilkan 5 isi record teratas dari tabel member, kemudian urutkan secara descending
berdasarkan “semester”.
19. Tampilkan isi record, hanya dari record ke-2 hingga record ke-4. (perhitungan record
dimulai dari record 0, maka dirumuskan record ke-2 adalah LIMIT 1, sebanyak 3 record
kebawah)
51 | P a g e
20. Tampilkan isi record, hanya dari record ke-1 hingga record ke-4, kemudian urutkan
berdasarkan id_member.
52 | P a g e
BAB V
DATA MANIPULATION LANGUAGE II
Pada pembahasan praktikum data manipulation language ini, akan digunakan beberapa
fungsi seperti:
Fungsi Agregasi:
Operator Fungsi Untuk Menghitung
AVG Nilai Rata-rata
COUNT Jumlah Data
MAX Nilai Terbesar
MIN Nilai Terkecil
SUM Jumlah Nilai
Fungsi DISTINCT:
Fungsi pengurutan record tanpa perulangan isi record yang sama.
SELECT DISTINCT nama_field FROM nama_tabel Fungsi Alias „AS‟:
Fungsi yang digunakan untuk mengganti secara tampilan nama tabel atau nama field.
nama_tabel_asli AS nama_tabel_alias nama_field_asli AS nama_ field_alias
Fungsi CONCAT (Concatenates):
Fungsi yang digunakan untuk menyambung kata.
Berikut latihan-latihan praktikum data manipulation language lanjutan:
Latihan Praktikum Data Manipulation Language 3
1. Masuk kedalam MariaDB melalui command prompt.
2. Buat sebuah database dengan nama “db_dml_lanjutan”, kemudian tampilkan seluruh
53 | P a g e
daftar database yang ada.
3. Aktifkan database db_dml_lanjutan.
4. Buat tabel bernama “pengajar”, dengan ketentuan sebagai berikut:
Field Name Type Size Keterangan
Nip Char 4 Primary Key
Nama Varchar 40
Kota_asal Varchar 50
Sks Int 2
54 | P a g e
5. Lihat struktur tabel pengajar.
6. Isikan data untuk tabel pengajar, dengan data sebagai berikut:
NIP Nama Kota_asal Sks Gaji
0101 Ahmad Rio Tangerang 4 3.000.000
0102 Iwan Kurniawan Serang 2 2.000.000
0103 Asep Kusnandar Tangerang 4 3.000.000
0104 Wati irawati Bandung 3 2.500.000
0105 Neng Sukaesih Bandung 2 2.000.000
0106 Maya Putriah Jakarta 2 2.000.000
7. Tampilkan isi seluruh record pada tabel pengajar, kemudian urutkan secara descending
berdasarkan field gaji.
55 | P a g e
8. Tampilkan rata-rata gaji pada tabel pengajar.
9. Tampilkan gaji terendah pada tabel pengajar.
10. Tampilkan jumlah total keseluruhan gaji pada tabel pengajar.
56 | P a g e
11. Tampilkan jumlah gaji dengan pengajar yang memiliki sks “lebih dari 3sks”.
12. Tampilkan isi record hanya field “kota_asal” tanpa perulangan isi record yang sama,
kemudian urutkan secara ascending berdasarkan kota_asal.
13. Buat alias dengan nama “rata_gaji” untuk mencari nilai rata-rata gaji pengajar.
14. Buat alias untuk tabel dengan nama “tp”, kemudian tampilkan record hanya field
“nama”, “sks”, “gaji”.
57 | P a g e
15. Buat alias untuk field “nama” dengan nama “nama_pengajar”, kemudian tampilkan isi
record hanya berdasarkan alias “nama_pengajar”.
16. Buat alias untuk field “sks” dengan nama “jumlah_sks”, kemudian tampilkan isi record
hanya field “nama”, “gaji” dan alias “jumlah_sks”.
58 | P a g e
17. Buat alias dengan nama “hasil”, dan merupakan hasil perkalian antara field sks dengan
field gaji, kemudian tampilkan isi record.
18. Buat alias dengan nama “bonus” dan merupakan hasil perkalian antara field sks dengan
“100000”, kemudian tampilkan isi record hanya field “nama”, “sks”, “bonus”.
19. Buat alias dengan nama “gaji_terbesar” untuk mencari nilai gaji terbesar pengajar.
59 | P a g e
20. Buat alias dengan nama “tunjangan” dan merupakan hasil perkalian antara field sks
dengan “250000”, kemudian tampilkan isi record dan urutkan secara descending
berdasarkan tunjangan.
Latihan Praktikum Data Manipulation Language 4
1. Masuk kedalam MariaDB melalui command prompt.
2. Aktifkan kembali database yang telah dibuat dilatihan sebelumnya dengan nama
“db_dml_lanjutan”.
3. Tampilkan daftar tabel yang ada pada database.
4. Buat tabel bernama “mata_kuliah”, dengan ketentuan sebagai berikut:
Field Name Type Size Keterangan
Kode_mtkul Char 3 Primary Key
60 | P a g e
Nama_mtkul Varchar 30
Sks Int 2
5. Lihat struktur tabel mata_kuliah.
6. Isikan data untuk tabel mata_kuliah, dengan data sebagai berikut:
Kode_mtkul Nama_mtkul Sks
123 Algoritma Pemrograman 4
124 Praktikum Basis Data 3
125 Web Programming I 4
126 Bahasa Inggris 2
127 Multimedia 3
128 Mobile Programming I 4
61 | P a g e
7. Tampilkan seluruh isi record pada tabel mata_kuliah.
8. Tampilkan jumlah data dari isi record tabel mata_kuliah. (menghitung jumlah data isi
record gunakan fungsi count).
9. Tampilkan isi record dengan menggabungkan isi data dari field “nama_mtkul” dengan
field “sks”, dengan penghubung string bernama “jumlah sks yaitu:”. (menggabungkan
karakter yang mengandung spasi gunakan fungsi concat).
62 | P a g e
10. Buat alias dengan nama “daftar_mata_kuliah”, kemudian tampilkan isi record dengan
menggabungkan isi data dari field “nama_mtkul” dengan field “sks”, dengan penghubung
string bernama “jumlah sks yaitu:”.
11. Buat alias dengan nama “Mata Kuliah” (menggunakan spasi) untuk field nama_mtkul,
kemudian tampilkan isi record dan urutkan berdasarkan alias “Mata Kuliah”. (untuk
membuat alias dengan menggunakan spasi gunakan tombol dengan simbol ` , biasa ada
disebelah angka 1 pada keyboard).
63 | P a g e
12. Buat alias dengan nama “Jumlah SKS” (menggunakan spasi) untuk field sks, kemudian
tampilkan hanya 4 record teratas.
13. Ubah isi record untuk nama matakuliah = “Mobile Programming I”, menjadi “Java
Programming I”.
64 | P a g e
14. Ubah isi record untuk nama matakuliah = “Bahasa Inggris”, jumlah sks menjadi “3”.
15. Tampilkan isi record hanya field “nama_mtkul”, “sks”, dimana yang ditampilkan hanya
jumlah sks 3.
65 | P a g e
16. Tambahkan isi record baru, yaitu kode_mtkul=”129”, nama_mtkul=”Java II”, sks=”4”.
17. Tampilkan seluruh isi record tabel matakuliah.
18. Ubah isi record untuk nama matakuliah = “Java II”, menjadi “Java Programming II”.
66 | P a g e
19. Hapus isi record dengan nama matakuliah = “Multimedia”.
20. Tampilkan kembali seluruh isi record tabel matakuliah, dengan buat alias “Mata
Kuliah” untuk field nama_mtkul dan “Jumlah SKS” untuk field sks.
67 | P a g e
BAB VI
STUDI KASUS
Pada bab ini akan dibahas mengenai studi kasus “perpustakaan“ dan merupakan
Contoh dari Tugas Project mata kuliah Aplikasi Basis Data. Sebelum menuangkan rancangan
basis data kedalam struktur fisik, terlebih dahulu harus membuat dokumentasi dalam bentuk
logic berupa struktur basis data menggunakan bantuan Entity Relational Diagram atau disebut
dengan istilah ERD dan Logical Relational Structure atau disebut dengan istilah LRS.
Entity Relational Diagram merupakan pemodelan basis data dengan menggunakan
diagram relasi antar entitas, dapat dilakukan dengan menggunakan suatu pemodelan basis data.
Sementara LRS atau Logical Relational Structure atau untuk bahasan selanjutnya disebut LRS,
merupakan Representasi dari struktur record-record pada tabel-tabel yang terbentuk dari hasil
relasi antar himpunan entitas. Pembahasan konsep dan pembuatan ERD dan LRS telah
dibahas pada Mata Kuliah “Sistem Basis Data“.
Contoh ERD dan LRS dari studi kasus perpustakaan dijabarkan dihalaman selanjutnya.
68 | P a g e
ERD Basis Data Perpustakaan
LRS Basis Data Perpustakaan
69 | P a g e
Pembuatan Database Perpustakaan
Didalam studi kasus ini yang akan dibahas mengenai database “perpustakaan”
yang dapat digunakan untuk pemrograman web, serta “dapat dikembangkan dan
disesuaikan kembali dengan kebutuhan” menjadi basis data untuk Mata Kuliah “Web
Programming”.
Berdasarkan konsep logis yang telah dibuat sebelumnya pada ERD dan LRS,
maka langkah selanjutnya membuat database fisik dengan MariaDB, sebagai berikut:
1. Masuk kedalam MariaDB melalui command prompt.
2. Buat sebuah database dengan nama “db_perpusweb”, kemudian tampilkan seluruh
daftar database yang ada.
70 | P a g e
3. Aktifkan database db_perpusweb.
4. Buat beberapa tabel berikut ini: Tabel “admin” :
Field Name Type Size Keterangan
Id_admin Int 5 Primary Key, AUTO_INCREMENT
Username Varchar 25
Password Varchar 35
Tabel “katalog_buku” :
Field Name Type Size Keterangan
id_katalog Int 5 Primary Key, AUTO_INCREMENT
nama_katalog Varchar 45
71 | P a g e
Tabel “buku” :
Field Name Type Size Keterangan
id_buku Int 5 Primary Key, AUTO_INCREMENT
id_katalog Int 5
judul_buku Varchar 50
pengarang Varchar 35
thn_terbit Date -
penerbit Varchar 50
Tabel “anggota” :
Field Name Type Size Keterangan
id_anggota Int 5 Primary Key, AUTO_INCREMENT
nama Varchar 45
72 | P a g e
no_telp Varchar 15
alamat Varchar 50
email Varchar 30
password Varchar 35
Tabel “peminjaman” :
Field Name Type Size Keterangan
id_pinjam Int 5 Primary Key, AUTO_INCREMENT
id_anggota Int 5
tgl_pinjam Date
tgl_kembali Date
status ENUM
„Selesai‟,‟Belum Selesai‟
jml_buku Int 2
73 | P a g e
Tabel “detail_pinjam” :
Field Name Type Size Keterangan
id_pinjam Int 5
id_buku Int 5
tgl_pengembalian Date
denda Double
status_buku ENUM
„Kembali‟,‟Belum Kembali‟
5. Tampilkan daftar tabel pada database
74 | P a g e
6. Tampilkan Struktur tabel masing-masing yang telah dibuat:
- Struktur tabel admin
- Struktur tabel katalog_buku
- Struktur tabel buku
75 | P a g e
- Struktur tabel anggota
- Struktur tabel peminjaman
- Struktur tabel detail_pinjam
76 | P a g e
7. Isi beberapa tabel dengan record sebagai berikut, kemudian
tampilkan hasilnya: Tabel admin:
Id_admin Username password
1 Admin Admin
2 Xxx Xxx
77 | P a g e
Tabel katalog_buku:
Id_katalog Nama_katalog
1 Sains
2 Hobby
3 Komputer
4 Komunikasi
5 Hukum
6 Agama
7 Populer
8 Bahasa
78 | P a g e
Tabel buku:
Id_buku Id_katalog Judul_buku Pengarang Thn_terbit Penerbit
1
1
Robotika Sederhana
Siswoyo Utomo
2013-01-01
Wacana Ria
2
3
Mahir dengan PHP
Adri Kusuma
2011-02-02
Pustaka Bangsa
3
2
Mahir Mewarnai
Akhmad Rahmat
2014-03-03
CV.Indo Kreasi
4
1
Hukum Fisika
Kurnia Sandi
2013-04-04
Wacana Ria
5
8
Mahir Bahasa Inggris
Aliuddin
2013-05-05
CV.Indo Kreasi
6
4
Public Speaking
Pambudi Prasetyo
2015-06-06
Aldi Pustaka
7
3
Trik SQL
Ahdim Makaren
2014-07-07
Wacana Ria
8
6
Kemurnian Agama
Pambudi Prasetyo
2014-08-08
Aldi Pustaka
9
1
Mikrokontroler
Ahdim Makaren
2012-09-09
Wacana Ria
79 | P a g e
80 | P a g e
Tabel anggota:
Id_anggota Nama No_telp Alamat Email password
1 Irfan Maulana 01244445555 BSD [email protected] 123
2 Nur Kumalasari 01233335555 Ciledug [email protected] 123
3 Sanjaya Wijaya 01211115555 Cimone [email protected] 123
4 Eva Irfianingsih 01266665555 Tangerang [email protected] 123
5 Ifqoh Permatasari
01277775555 Cengkareng [email protected] 123
6 Indah Riana 01288885555 Fatmawati [email protected] 123
7 Tiwie
Andrawati 01299995555 Warung Jati [email protected] 123
8 Mus Dalifa 01200005555 Jatiwaringin [email protected] 123
9 Hisbu Utomo 01233336666 Salemba [email protected] 123
10 Zaenal Abidin 01233337777 Bekasi [email protected] 123
81 | P a g e
8. Kerjakan beberapa perintah soal query SQL dibawah ini:
a. Tampilkan daftar buku dengan nama penerbit = ”Wacana Ria”, kemudian urutkan
berdasarkan “thn_terbit”.
b. Tampilkan daftar buku dengan pengarang = ”Pambudi Prasetyo”.
c. Buat alias untuk field “judul_buku” dengan nama “Buku Tersedia”. Tampilkan daftar
buku hanya field “pengarang”, “penerbit”, dan alias “Buku Tersedia”.
d. Tampilkan daftar buku hanya field “judul_buku”, “pengarang”, “thn_terbit”, kemudian
urutkan secara descending berdasarkan “thn_terbit”.
e. Tampilkan daftar buku dengan pengarang Selain “Ahdim Makaren”.
f. Tampikan daftar Anggota dengan alamat “ciledug“.
g. Tampilkan daftar Anggota dengan bernama depan “Mu”.
h. Tampilkan daftar Anggota hanya field “nama”,”no_telp”,”alamat”, “email”, selain
anggota beralamat di “Salemba”.
i. Tampilkan daftar dengan No Telp 3 angka terakhir = “777”.
j. Tampilkan jumlah data pada tabel anggota dan tabel buku.
82 | P a g e
TUGAS 2
MATA KULIAH APLIKASI BASIS DATA
Tugas individu
Carilah kasus yang berbeda dan buat kombinasi pembahasan perintah
DDL dan DML yang telah dibahas pada bab-bab sebelumnya.
BAB VII
REVIEW MATERI
83 | P a g e
84 | P a g e
BAB IX
PHPMYADMIN
PhpMyAdmin merupakan tools dengan Graphic User Interface yang dapat
memudahkan dalam pengelolaan database pada MySQL. Jika pada bahasan-bahasan
sebelumnya dibahas query-query sql pembentuk tabel dan database menggunakan tools
command prompt, pada bab ini akan dibahas menggunakan phpMyAdmin.
Versi dari phpMyAdmin dan bahasa PHP yang diterima akan mengikuti dari versi
Xampp yang terinstal pada Laptop/PC. Namun, pada Modul Aplikasi Basis Data ini,
phpMyAdmin hanya dibahas dalam bab ini saja. Hal ini karena kemudahan dalam
penggunaannya dan harus ditekankan adalah penguasaan query-query sql dalam membentuk
abel serta basis data yang baik.
Menjalankan phpMyadmin
1. Pastikan pastikan tab MySQL dan Apache dalam kondisi Running pada Xampp Control
Panel. (lihat kembali materi pembahasan instalasi xampp).
2. Ketikan pada Browser alamat “localhost/phpmyadmin”.
85 | P a g e
Pada halaman pembuka terdapat pilihan untuk mengatur bahasa tampilan, serta melihat versi
dari phpMyAdmin yang sedang dijalankan.
Membuat Database baru
Ketikan pada kotak “Ciptakan/Buat database baru”, lalu klik tombol “Ciptakan/Buat”.
Buat database dengan nama “db_perpusweb2”.
86 | P a g e
Setelah membuat database baru, akan terlihat daftar tabel yang masih kosong (sisi
sebelah kiri)
Membuat Tabel Pada Database
Ketika telah masuk kedalam database db_perpusweb2, maka kita ketikkan nama tabel
beserta jumlah field yang ada pada tabel.
Tabel-tabel pada latihan ini, dapat melihat struktur tabel pada db_perpusweb (bab studi
kasus sebelum UTS).
Tabel “admin” :
Field Name Type Size Keterangan
Id_admin Int 5 Primary Key, AUTO_INCREMENT
Username Varchar 25
Password Varchar 35
87 | P a g e
Jika sudah mengisi nama tabel dan jumlah kolom atau field klik tombol “Kirim atau Go”.
Bila Primary Key, bersifat AUTO_INCREMENT, maka ceklis pada pilihan
AUTO_INCREMENT atau A_I. Lalu Klik tombol Simpan.
Tampilan ketika berhasil membuat tabel:
88 | P a g e
Latihan
Lanjutkan pengerjaan database db_perpusweb2”, Lalu Buat Kembali beberapa tabel
berikut ini menggunakan phpMyAdmin (lihat contoh pengerjaan pada pembuatan tabel
admin):
Tabel “katalog_buku” :
Field Name Type Size Keterangan
Id_katalog Int 5 Primary Key, AUTO_INCREMENT
Nama_katalog Varchar 45
Tabel “buku” :
Field Name Type Size Keterangan
Id_buku Int 5 Primary Key, AUTO_INCREMENT
Id_katalog Int 5
Judul_buku Varchar 50
89 | P a g e
Pengarang Varchar 35
Thn_terbit Date -
penerbit Varchar 50
Tabel “anggota” :
Field Name Type Size Keterangan
Id_anggota Int 5 Primary Key, AUTO_INCREMENT
Nama Varchar 45
No_telp Varchar 15
Alamat Varchar 50
Email Varchar 30
Password Varchar 35
Tabel “peminjaman” :
Field Name Type Size Keterangan
Id_pinjam Int 5 Primary Key, AUTO_INCREMENT
Id_anggota Int 5
Tgl_pinjam Date
Tgl_kembali Date
Status ENUM
„Selesai‟,‟Belum Selesai‟
Jml_buku Int 2
Tabel “detail_pinjam” :
Field Name Type Size Keterangan
Id_pinjam Int 5
90 | P a g e
Id_buku Int 5
Tgl_pengembalian Date
Denda Double
Status_buku ENUM
„Kembali‟,‟Belum Kembali‟
Mengisi Record Pada Tabel
Untuk mengisi record tabel pada phpMyAdmin, klik/pilih terlebih dahulu tabel yang akan diisi
recordnya pada daftar tabel sebelah kiri, kemudian klik menu tab“Sisipkan/Tambahkan/Insert”.
Untuk Tabel dengan primary key bersifat AUTO_INCREMENT, maka saat insert record
tidak perlu diisi data pada field primary key.
Untuk menampilkan hasilnya klik menu tab “Browse/Jelajahi”
91 | P a g e
Latihan
Isilah record beberapa tabel yang telah dibuat berikut ini menggunakan phpMyAdmin
(lihat contoh pengerjaan pada insert record tabel admin):
Tabel katalog_buku:
Id_katalog Nama_katalog
1 Sains
2 Hobby
3 Komputer
4 Komunikasi
5 Hukum
6 Agama
7 Populer
8 Bahasa
92 | P a g e
Tabel buku:
Id_buku Id_katalog Judul_buku Pengarang Thn_terbit Penerbit
1
1
Robotika Sederhana
Siswoyo Utomo
2013-01-01
Wacana Ria
2
3
Mahir dengan PHP
Adri Kusuma
2011-02-02
Pustaka Bangsa
3
2
Mahir Mewarnai
Akhmad Rahmat
2014-03-03
CV.Indo Kreasi
4
1
Hukum Fisika
Kurnia Sandi
2013-04-04
Wacana Ria
5
8
Mahir Bahasa Inggris
Aliuddin
2013-05-05
CV.Indo Kreasi
6
4
Public Speaking
Pambudi Prasetyo
2015-06-06
Aldi Pustaka
7
3
Trik SQL
Ahdim Makaren
2014-07-07
Wacana Ria
8
6
Kemurnian Agama
Pambudi Prasetyo
2014-08-08
Aldi Pustaka
9
1
Mikrokontroler
Ahdim Makaren
2012-09-09
Wacana Ria
Tabel anggota:
Id_anggota Nama No_telp Alamat Email password
1 Irfan Maulana 01244445555 BSD [email protected] 123
2 Nur Kumalasari 01233335555 Ciledug [email protected] 123
3 Sanjaya Wijaya 01211115555 Cimone [email protected] 123
4 Eva Irfianingsih 01266665555 Tangerang [email protected] 123
93 | P a g e
5 Ifqoh Permatasari 01277775555 Cengkareng [email protected] 123
6 Indah Riana 01288885555 Fatmawati [email protected] 123
7 Tiwie Andrawati 01299995555 Warung Jati [email protected] 123
8 Mus Dalifa 01200005555 Jatiwaringin [email protected] 123
9 Hisbu Utomo 01233336666 Salemba [email protected] 123
10 Zaenal Abidin 01233337777 Bekasi [email protected] 123
Mengubah dan Menghapus Isi Record Tabel
Pilih terlebih dahulu tabel, kemudian klik menu “Browse” untuk menampilkan isi record
pada tabel. Untuk Ubah bisa menggunakan icon pensil, sedangkan untuk Hapus bisa
menggunakan icon tanda silang/strip merah.
Mengubah dan Menghapus Field Struktur Tabel
Pilih terlebih dahulu tabel, kemudian klik menu “Struktur” untuk menampilkan isi record
pada tabel. Untuk Ubah bisa menggunakan icon pensil, memberi Primary Key menggunakan
icon kunci, sedangkan untuk Hapus bisa menggunakan icon tanda silang/strip merah.
Mengubah Nama Tabel
Pilih terlebih dahulu tabel yang akan diubah namanya, kemudian klik menu
“Operasi”.
94 | P a g e
Membuat Relasi Tabel pada phpMyAdmin
Pilih dan klik menu tab “Designer”
Saat Menu Designer terbuka, secara default field-field pada database belum terbuka.
Cara membuka field pada tabel klik tanda segitiga pada masing-masing kotak tabel.
Kemudian buat relasi dengan mengklik icon “Create Relation”, relasikan field
primary key pada masing-masing tabel ke tabel lain dengan field yang sama dengan teknik
“drag and drop”.
95 | P a g e
Export Database
Proses Export Database dibutuhkan apabila, kita hendak memindahkan pekerjaan yang
berhubungan dengan database MySQL pada Laptop/PC satu dipindahkan ke Laptop/PC yang
lain. Salah satu cara pemindahan database tersebut, harus dilakukan proses export terlebih
dahulu, kemudian hasilnya bisa diimport pada Laptop/PC yang lain.
Cara melakukan export database MySQL yaitu, pastikan halaman yang sedang aktif adalah
database (tidak sedang membuka suatu tabel). Kemudian klik tab menu “Export”. Untuk berbagai
kebutuhan, phpMyAdmin menyediakan versi convert database, untuk latihan kita bisa memilih option
pilihan “sql”, lalu pilih Kompres File dalam bentuk ZIP. Setelah pemilihan selesai klik tombol Go.
96 | P a g e
Import Database
Sedikit berbeda dari proses Export Database, sebelum melakukan proses import database kita
diharuskan melakukan pembuatan database kosong pada phpMyAdmin. Proses selanjutnya, memilih
file import yang akan dimasukan kedalam database, setelah memilih klik tombol Go.
Hasil setelah proses import database berhasil:
97 | P a g e
Latihan Database phpMyAdmin :
1. Buat database menggunakan phpMyAdmin dengan nama “db_latihan_sepatu”.
2. Buat beberapa tabel pada database db_latihan_sepatu, sebagai berikut: Tabel “sepatu”:
Field Name Type Size Keterangan
Kd_sepatu Char 4 Primary Key
merk Varchar 30
Ukuran Varchar 10
Harga Int 8
Tabel “pembeli”:
Field Name Type Size Keterangan
Id_pembeli Int 5 Primary Key, AUTO_INCREMENT
Nm_pembeli Varchar 35
98 | P a g e
Alamat Varchar 60
No_hp Varchar 18
Tabel “penjualan”:
Field Name Type Size Keterangan
No_fak Char 6 Primary Key
Tgl_fak Varchar 35
Id_pembeli Int 5
Tabel “detail_penjualan”:
Field Name Type Size Keterangan
No_fak Char 6
Kd_sepatu Char 4
Jumlah Int 3
3. Isi Record untuk masing-masing tabel sebagai berikut: Tabel “sepatu” :
Kd_sepatu merk Ukuran Harga
S001 Nike 40 300.000
S002 Adidas 41 320.000
S003 Xander 40 350.000
S004 Mutiara 40 240.000
S005 Bata 41 280.000
S006 Penx 41 230.000
99 | P a g e
Tabel “pembeli”:
id_pembeli Nm_pembeli Alamat No_hp
1 Joko Pontianak 091212123434
2 Butet Yogyakarta 091213134545
3 Daeng Tegal 091214145656
4 Putu Tasikmalaya 091215156767
5 Neng Bandung 091216167878
Tabel “penjualan”:
No_fak Tgl_fak Id_pembeli
FK0101 2017-11-02 1
FK0102 2017-11-03 3
FK0103 2017-11-04 4
FK0104 2017-11-05 5
Tabel “detail_penjualan”:
No_fak Kd_sepatu Jumlah
FK0101 S001 1
FK0101 S002 2
FK0102 S001 1
FK0103 S005 3
FK0104 S003 1
FK0104 S006 1
4. Buat relasi antar tabel dengan menggunakan “Designer phpMyAdmin”.
100 | P a g e
BAB X
FUNGSI JOIN
Setelah pembahasan-pembahasan sebelumnya telah dibahas mengenai proses
menampilkan data dari sebuah tabel, untuk pembahasan bab ini akan dibahas mengenai konsep
join. Join merupakan suatu perintah atau query yang digunakan untuk mendapatkan atau
menampilkan data yang berasal dari dua buah tabel atau lebih.
Syarat dari terpenuhinya query join adalah tabel-tabel yang digunakan dalam query
haru memiliki relasi satu sama lain. (lihat bahasan studi kasus perpustakaan). Secara umum,
query join yang sering digunakan terdiri dari Inner Join dan Outer Join.
Berikut bentuk umum penulisan Query Inner Join:
SELECT tabel1.*, tabel2.*
FROM tabel1 INNER JOIN tabel2 ON tabel1.PK=tabel2.FK;
Ket : PK = Primary key, FK = Foreign Key
Berikut ini adalah beberapa latihan praktikum meteri join:
Latihan Praktikum Inner Join (studi kasus relasi antar 3 tabel)
1. Masuk kedalam MariaDB melalui command prompt.
2. Buat sebuah database dengan nama “db_join_kampus”, kemudian tampilkan seluruh
daftar tabel yang ada.
3. Aktifkan database db_join_kampus.
101 | P a g e
4. Buat tabel bernama “dosen”, dengan ketentuan sebagai berikut:
Field Name Type Size Keterangan
Nip Char 5 Primary Key
Nm_dosen Varchar 35
Thn_masuk Year -
Alamat Varchar 50
5. Buat tabel bernama “mt_kuliah”, dengan ketentuan sebagai berikut:
Field Name Type Size Keterangan
kd_mtkul Char 3 Primary Key
Nm_mtkul Varchar 30
Sks Int 2
6. Buat Tabel bernama “mengajar”, dengan ketentuan sebagai berikut:
Field Name Type Size Keterangan
Id Int 3 Primary Key, AUTO_INCREMENT
102 | P a g e
Nip Char 5 Foreign Key
kd_mtkul Char 3 Foreign Key
7. Tampilkan struktur tabel dari masing-masing tabel yang telah dibuat.
8. Isikan data untuk tabel dosen, dengan data sebagai berikut:
NIP Nm_dosen Thn_masuk Alamat
01011 Budi Santoso 2003 Tangerang
01012 Rio Hermawan 2009 Jakarta
01013 Tio Sandewa 2005 Jakarta
103 | P a g e
01014 Agus Supardi 2011 Bogor
01015 Nurlaela Sari 2014 Depok
9. Isikan data untuk tabel mt_kuliah, dengan data sebagai berikut:
kd_mtkul Nm_mtkul Sks
101 Algoritma 4
202 PTIK 3
303 SIM 4
404 E-Commerce 2
505 Agama 3
104 | P a g e
10. Isikan data untuk tabel mengajar, dengan data sebagai berikut:
Id Nip kd_mtkul
1 01011 101
2 01011 303
3 01012 202
4 01012 404
5 01012 303
6 01013 505
7 01013 101
8 01014 404
9 01015 202
10 01015 303
11. Tampilkan isi record dari ketiga tabel yang telah dibuat. (dengan perintah desc)
12. Tampilkan daftar dosen yang mengajar mata kuliah =”SIM” menggunakan Inner Join.
105 | P a g e
13. Tampilkan hanya field “nm_dosen”, “nm_mtkul”, “thn_masuk” yang mengajar mata
kuliah = “E-Commerce”, kemudian urutkan secara descending berdasarkan “thn_masuk”.
14. Buat alias dengan nama “Nama Dosen” untuk field “nm_dosen” dan alias “Mengajar”
untuk field “nm_mtkul”. Tampilkan hanya field NIP, alias Nama Dosen, alias Mengajar,
106 | P a g e
kemudian urutkan berdasarkan “nm_mtkul.
Latihan Praktikum Outer Join (studi kasus relasi antar 2 tabel)
Fungsi Outer Join yang akan dipraktikan terdiri dari Left dan Right Outer Join. Berikut
akan dijabarkan latihan praktikum Outer Join.
1. Masuk kedalam MariaDB melalui command prompt.
2. Buat sebuah database dengan nama “db_join_buku”, kemudian tampilkan daftar tabel
yang ada.
3. Aktifkan database db_join_buku.
4. Buat tabel bernama “buku”, dengan ketentuan sebagai berikut:
Field Name Type Size Keterangan
Id_buku Int 3 Primary Key, AUTO_INCREMENT
Judul
Varchar
40
Thn_terbit Year -
107 | P a g e
Id_kategori Int 3
5. Buat tabel bernama “kategori_buku”, dengan ketentuan sebagai berikut:
Field Name Type Size Keterangan
Id_kategori Int 3 Primary Key, AUTO_INCREMENT
Nm_kategori Varchar 30
6. Isi Record masing-masing tabel sebagai berikut: Tabel buku:
Id_buku Judul Thn_terbit Id_kategori
1 PTIK 2017 1
2 SIM 2015 2
3 APSI 2014 2
4 RPL 2016 4
5 LINUX 2014 5
6 SO 2013 6
Tabel kategori_buku:
Id_kategori Nm_kategori
1 Manajemen Informatika
2 Sistem Informasi
3 Ilmu Komputer
4 Teknik Komputer
5 Jaringan Komputer
108 | P a g e
7. Tampilkan Isi Record masing-masing tabel.
8. Tampilkan isi Record dengan perintah Left Outer Join.
109 | P a g e
Berbeda dengan Inner Join, Fungsi Left Join, akan menampilkan data-data termasuk
data yang tidak berelasi, dan akan ditampilkan secara default dengan nilai “NULL”.
Left join akan menampilkan secara lengkap data dari “Tabel pertama (sebelah kiri)”,
dalam contoh ini yaitu tabel buku ditampilkan terlebih dahulu, tetapi “karena id_kategori=6
tidak ada isinya pada tabel kategori_buku, maka akan bernilai null pada tampilan tabel
kategori_buku”.
9. Tampilkan isi Record dengan perintah Right Outer Join.
Right join akan menampilkan secara lengkap data dari “Tabel kedua (sebelah kanan)”, dalam
contoh ini yaitu tabel kategori_buku ditampilkan setelah tabel buku, tetapi “karena pada tabel
buku, tidak ada buku dengan id_kategori=3, maka akan bernilai null pada tampilan tabel buku”.
110 | P a g e
BAB XI
FUNGSI JOIN II
Setelah mempelajari dan mempraktikan fungsi join pada bab sebelumnya. Pada
pembahasan bab ini, akan dijabarkan penggunaan fungsi percabangan “IF” didalam query join
saat menampilkan data pada tabel-tabel yang berelasi didalam suatu database.
Berikut Latihan Praktikum Fungsi Percabangan IF didalam query Join:
Latihan Praktikum Join Lanjutan (studi kasus relasi antar 3 tabel)
1. Masuk kedalam MariaDB melalui command prompt.
2. Buat sebuah database dengan nama “db_join_rental”, kemudian aktifkan database
db_join_rental.
3. Buat 3 buah tabel dengan ketentuan sebagai berikut: Tabel “mobil_baru”:
Field Name Type Size Keterangan
Kd_mobil Char 3 Primary Key
Nopol Varchar 20
Jenis_mobil Varchar 20
harga Double -
111 | P a g e
Tabel “penyewa”:
Field Name Type Size Keterangan
No_ktp Char 8 Primary Key
Nama Varchar 40
Alamat Varchar 70
No_telp Varchar 15
Tabel “penyewaan”:
Field Name Type Size Keterangan
Notrans Int 8 Primary Key, AUTO_INCREMENT
No_ktp Char 8
Kd_mobil Char 3
Tgl_sewa Date
Tgl_kembali Date
Lama_sewa Double
Jumlah_sewa Double
112 | P a g e
4. Isi Record masing-masing tabel sebagai berikut: Tabel mobil_baru:
Kd_mobil nopol Jenis_mobil Harga
M01 B 1234 KO Sedan 600.000
M02 B 4321 BL Mini Bus 500.000
M03 B 6789 MH Mini Bus 500.000
M04 B 9876 MN Mini Bus 450.000
M05 B 3333 LS Mini Bus 600.000
Tabel penyewa:
No_ktp Nama Alamat No_telp
12345678 Cadas Atmojo Sukabumi 07123334444
113 | P a g e
23456789 Ria Ella Nurmala Tasikmalaya 07123335555
34567890 Egi Kusumawati Bandung 07123336666
56789012 Satria Mandala Karawang 07123337777
67890123 Agung Gumelar Cikampek 07123338888
Tabel penyewaan:
5. Tampilkan isi record pada masing-masing tabel.
6. Tampilkan hanya field “tgl_sewa” (data diambil dari tabel penyewaan), “nama” (data
diambil dari tabel penyewa), “kd_mobil” (data diambil dari tabel penyewaan),
“jumlah_sewa” (diambil dari tabel penyewaan), “lama_sewa” (diambil dari tabel
114 | P a g e
penyewaan), serta buat alias dengan nama “total” (total didapat dari harga *
jumlah_sewa * lama_sewa). Gunakan relasi Inner Join untuk menampilkan hasilnya.
7. Tampilkan hanya field “tgl_sewa” (data diambil dari tabel penyewaan), “nama” (data
diambil dari tabel penyewa), “kd_mobil” (data diambil dari tabel penyewaan),
“jumlah_sewa” (diambil dari tabel penyewaan), “lama_sewa” (diambil dari tabel
penyewaan), serta buat alias dengan nama “bonus1” (bonus1 didapat jika jumlah sewa
“lebih besar atau sama dengan 2”, maka mendapat bonus ”Air Mineral” selain itu “No
Bonus” ). Gunakan relasi Inner Join untuk menampilkan hasilnya.
115 | P a g e
116 | P a g e
BAB XII
REVIEW MATERI
1. Buat database dengan nama db_review
2. Buat 3 buah tabel dengan ketentuan sebagai berikut: Tabel dokter:
Field Name Type Size Keterangan
Id_dokter Int 3 Primary Key, AUTO_INCREMENT
Nama Varchar 35
Alamat Varchar 50
No_telp Varchar 20
Biaya_konsultasi Double -
Tabel pasien:
Field Name Type Size Keterangan
Id_pasien Int 3 Primary Key, AUTO_INCREMENT
Nama Varchar 35
Alamat Varchar 50
No_telp Varchar 20
117 | P a g e
Tabel periksa:
Field Name Type Size Keterangan
Noperiksa Int 3 Primary Key, AUTO_INCREMENT
Tgl_periksa Date -
Id_pasien Int 3
Id_dokter Int 3
Biaya Double -
3. Isi Record pada tabel sebagai berikut: Tabel dokter:
Id_dokter Nama alamat No_telp Biaya_konsultasi
1 Sri Putri BSD 0217775555 50.000
2
Ade Wijaya
Cimone
0217776666
100.000
3 Hermawan Tangerang 0217778888 50.000
4 Susanti Cengkareng 0217779999 75.000
5 Ernes Ciledug 0217770000 100.000
Tabel pasien:
Id_dokter nama alamat No_telp
1 Abdul Majid Tangerang 0314442222
2 Ade Wijaya Tangerang 0314443333
3 Hermawan Tangerang 0314445555
4 Susanti Tangerang Selatan 0314446666
5 Ernes Tangerang Selatan 0314447777
Tabel periksa:
118 | P a g e
noperiksa Tgl_periksa Id_pasien Id_dokter biaya
1 2017-11-24 1 3 30.000
2 2017-11-24 3 1 30.000
3 2017-11-26 2 3 30.000
4 2017-11-28 4 2 30.000
4. Buka struktur masing-masing tabel yang telah dibuat.
5. Tampikan seluruh isi record pada masing-masing tabel.
6. Ubah size pada field “nama” tabel dokter, menjadi size = “45”.
7. Tampilkan isi record tabel dokter dengan nama dokter =”Sri Putri”.
8. Tampilkan hanya field “noperiksa”, “nama”(diambil dari tabel dokter),
“biaya_konsultasi”, “tgl_periksa” dengan menggunakan fungsi inner join.
9. Tampilkan hanya field “noperiksa”, “nama”(diambil dari tabel dokter),
“biaya_konsultasi”, “tgl_periksa”, “total_biaya”. Total_biaya merupakan alias yang
dibuat (total_biaya didapat dari biaya_konsultasi+biaya), gunakan fungsi inner join.
119 | P a g e
10. Tampilkan hanya field “noperiksa”, “nama”(diambil dari tabel dokter),
“biaya_konsultasi”, “tgl_periksa”, “total_biaya” “bonus”. Total_biaya merupakan
alias yang dibuat (total_biaya didapat dari biaya_konsultasi+biaya). Buat alias kembali
dengan nama “Bonus” (bonus didapat jika total_biaya >100.000, yaitu”Vitamin C”).
gunakan fungsi inner join untuk mendapatkan hasilnya.
120 | P a g e
Daftar Pustaka
Connolly, Thomas M & E Begg, Carolyn, Database System, Apractical Approach to Design,
Implementation and Management, 2015, Pearson Education, United Kingdom
Fathansyah, Sistem Basis Data, 2015, Informatika, Bandung
Hariyanto, Bambang, Sistem Manajemen Basis Data, 2004 Informatika, Bandung
Pahlevi, Said Mirza, Tujuh Langkah Praktis Pembangunan Basis Data, 2013, Elex Media
Komputindo, Jakarta
Simarmata, Janner, BasisData, 2010, Andi Offset, Yogyakarta
Waljiyanto, Sistem Basis Data, 2003, Graha Ilmu,Yogyakarta