1. Tugas Project Dikerjakan dalam bentuk “Kelompok”, dengan jumlah anggota masing-
masing kelompok berjumlah 4-5 mahasiswa (dibuat fleksibel dan disesuaikan dengan
2. Tema Project dapat memilih sendiri atau ditentukan oleh Bapak/Ibu Dosen Pengampu
Mata Kuliah, dengan syarat tidak ada tema yang sama dalam 1 kelas yang sama, dan tidak
3. Contoh pengerjaan Tugas Project akan dibahas pada Bab VI Studi Kasus Perpustakaan.
b. Konsep Logis Database, berupa pembuatan ERD dan LRS dari project yang
dibuat. (wajib terdiri dari beberapa tabel dengan adanya relasi disertai
kardinalitas).
Isi materi presentasi dibuat menarik, dengan menampilkan hasil project yang telah
dijabarkan pada Makalah (halaman pembuka berisi nama kelompok dan anggota
disertai judul tema, isi poin penting yang dibahas yaitu erd dan lrs, spesifikasi file,
pengerjaannya yaitu, diluar kelas(dirumah) dan didalam kelas. Hasil pengerjaan ugas-tugas
mandiri mahasiswa menjadi poin untuk akumulasi Nilai Tugas bagi mahasiswa.
1. Pada setiap pertemuan tatap muka dikelas, mahasiswa telah terlebih dahulu
mempelajari dan mengerjakan dirumah seluruh bahasan materi serta Latihan Soal
2. Latihan Soal pada bab dikerjakan dengan hasil tampilan dan pengerjaan query sql dapat di
pertemuan pembahasan bab tersebut dilakukan oleh Dosen Pengampu Mata Kuliah.
3. Untuk mengetahui kapasitas kemampuan mahasiswa terhadap bahasan materi serta Tugas
Latihan Soal pada bab yang telah dikerjakan mahasiswa dirumah sebelumnya, Dosen
Pengampu dapat menguji mahasiswa di kelas disaat pertemuan pembahasan bab tersebut
dilakukan.
Tugas Mandiri didalam kelas dilakukan saat perkuliahan memasuki bahasan “Review
Materi“.
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.
1. Karakter
Merupakan bagian terkecil dalam database, dapat berupa karakter numerik (angka 0 s/d
9), huruf (A-Z, a-z) ataupun karakter-karakter khusus seperti *, &, %, #, dan lain-lain.
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
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
5. Database
Kumpulan dari tabel-tabel yang saling berelasi, disusun secara logis sehingga menghasilkan
Instalasi Xampp
Untuk pembelajaran pada modul aplikasi basis data ini menggunakan software
XAMPP. Untuk lebih lanjut mengenai berbagai produk xampp, silahkan kunjungi situs
source yang sering dipergunakan untuk pengembangan aplikasi berbasis website yang
phpMyAdmin, FileZilla, Tomcat, Xampp Control Panel. Xampp sendiri telah tersedia juga
Versi xampp yang digunakan dalam modul praktikum ini adalah xampp minimal versi
5.6.3 dengan extensi PHP telah mendukung mysqli dan server MariaDB.
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
TUGAS 1
MySQL adalah sebuah program database server yang mampu menerima dan
mengirimkan datanya dengan sangat cepat, multi user serta menggunakan perintah standar
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
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.
Basis Data terdapat dalam paket instalasi xampp yang telah dibahas pada bahasan
penulisan script bahasa SQL. Untuk membuka command prompt pada Laptop/PC bisa
1. Pilih menu Start -> All Programs -> Accessories Kemudian Pilih Command Prompt.
2. Klik Kanan pada command prompt atau cmd, lalu pilih Run as administrator.
4. Untuk memodifikasi tampilan dari command prompt, bisa dengan cara klik kanan pada
5. Pengaturan modifikasi dapat melalui tab Options, Font, Layout, Colors pada properties
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:
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
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:
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.
short key pada keyboard “agar pengetikan perintah yang sama tidak diketik ulang
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 “;”
Select user, host from mysql.user; (perintah ini digunakan untuk melihat/menampilkan
Untuk membuat dan menghapus user yang ada dalam Basis Data harus masuk
menggunakan user root (user tertinggi), kemudian dengan mengetikan perintah dibawah ini:
password=”123”)
Untuk mengecek user yang telah dibuat, silahkan login menggunakan user tersebut,
namun terlebih dahulu harus keluar dari root dengan perintah exit;
password)
dengan password=123)
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:
Sebagai contoh pembuatan database dan tabel, user yang akan kita gunakan adalah
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
Perintah untuk membuat tabel, yaitu dengan perintah create table nama_tabel (spesifikasi
tabel); (spesifikasi tabel dan tipe data akan dibahas pada bahasan selanjutnya)
Sedangkan perintah untuk melihat struktur tabel, gunakan perintah desc mhs; atau
describe mhs;
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
Penjelasan:
- 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
bintang (*).
Sebagai contoh, kita telah memiliki user bernama user2, database bernama db_latihan1,
Jika kita ingin memberikan hak akses user2 hanya bisa melihat tabel mhs, maka
Jika didalam database db_latihan1 terdiri dari banyak tabel, dan akan diberikan hak
akses seluruh tabel kepada user2, perintahnya menggunakan tanda bintang (*).
Jika kita ingin memberikan hak akses user2 secara penuh (melihat, menambah,
merubah) terhadap tabel pada database db_latihan1, maka perintahnya menggunakan perintah
‘all’
Untuk melihat hasilnya keluar terlebih dahulu dari root, kemudian masuk sebagai user2:
selanjutnya akan dibahas mengenai jenis-jenis tipe data yang sering dipakai pada database.
Tipe data string yang berisi nilai berupa karakter atau huruf. Beberapa tipe data string
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.
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
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
Text, apabila suatu tipe data membutuhkan isi data yang harus bisa menampung jumlah
karakter yang banyak, maka disarankan untuk tidak menggunakan char maupun varchar,
tetapi gunakan tipe data Text. Tipe data text terbagi kedalam beberapa tipe data, yaitu,
(contoh field komentar yang bisa berisi dari banyak karakter dan berjumlah
Blob, tipe data ini memiliki konsep yang sama dengan tipe data TEXT, namun memiliki
struktur penyimpanan seperti binary, atau menyimpan secara biner karakter yang
LONGBLOB. Sehingga bisa dikatakan tipe data blob merupakan versi biner dari tipe data
Text.
Tipe data ini digunakan untuk menampung angka-angka yang dapat dilakukan untuk
Integer, tipe data untuk menampung angka berupa bilangan bulat. Tipe data ini terdiri
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
Signed dan Unsigned dapat digunakan apabila isi data ingin bernilai negatif (signed) atau
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
berat DECIMAL(4,2). Maka, berarti isi data akan memuat 4 digit angka, dengan 2 angka
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
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
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”:
Kd_buku Char 5
Judul Varchar 40
Penulis Varchar 35
Penerbit Varchar 35
Kode Char 6
Nama Varchar 30
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.
“komik_cobalagi”.
Nama Varchar 20
Alamat Varchar 30
No_telp Varchar 15
Tgl_lahir Date -
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
Tabel “komik” :
Judul Varchar 25
Pengarang Varchar 30
Thn_terbit Year -
Jenis_komik Varchar 15
No_pinjam Int 4
Id_anggota Char 4
Id_komik Char 5
Jumlah Int 2
13. Buat field baru pada tabel komik, yaitu, “status” dengan type = “varchar” dan size =
“10”.
15. Beri Primary Key pada field “no_pinjam” pada tabel pinjam.
Nama Varchar 40
Tgl Date -
Kelas Varchar 15
No_telp Varchar 18
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”.
Tabel “tutor” :
Id_tutor Char 8
Nama_tutor Varchar 30
Jenis Varchar 20
Jml_kelas Smallint 4
Tabel “ruang” :
Id_ruang Char 3
Nama_ruang Varchar 10
16. Ubah “tipe data” dari field “jml_kelas” pada tabel tutor menjadi int(4).
20. Lihat kembali daftar tabel yang ada pada database db_les_private.
Nama_pedagang Varchar 35
Jns_kelamin Varchar 10
Alamat Varchar 50
No_telp Varchar 18
Tgl_lahir Date -
Nama_barang Varchar 35
Ukuran Varchar 10
Warna Varchar 15
TUGAS 3
Berbeda dengan DDL yang berhubungan dengan struktur tabel pada bahasan
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.
Judul_buku Varchar 45
Penulis Varchar 25
Thn_terbit Year -
Penerbit Varchar 45
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”.
sama pada penerbit tidak akan dipanggil kembali untuk record selanjutnya)
10. Tampilkan isi record dengan pengurutan data berdasarkan penerbit. (secara default
menggunakan like)
13. Tampilkan isi record dengan Tahun terbit dibawah tahun 2005.
14. Tampilkan isi record dengan Judul buku mengandung kata “SQL”.
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
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
Pada lanjutan praktikum DML ini, akan dibahas penggunaan operator-operator yang
Operator Aritmatika:
Operator Keterangan
+ Penjumlahan
- Pengurangan
* Perkalian
/ Pembagian
Operator Pembanding:
Operator Keterangan
= Sama Dengan
In Berada didalam
Operator Logika:
Operator Keterangan
And atau && Data Benar, bila kedua pembanding bernilai benar
dalam menampilkan data per baris pada suatu tabel, dengan bentuk penulisan:
2. Aktifkan kembali database yang telah dibuat dilatihan sebelumnya dengan nama
“db_latihan_dml”.
Nama_member Varchar 40
Alamat Varchar 75
Semester Char 2
Usia Char 2
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
2”.
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
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”.
dimulai dari record 0, maka dirumuskan record ke-2 adalah LIMIT 1, sebanyak 3 record
kebawah)
20. Tampilkan isi record, hanya dari record ke-1 hingga record ke-4, kemudian urutkan
berdasarkan id_member.
Nama_brg Varchar 40
Thn_pembuatan Year -
Stok Int 3
4. Lihat struktur tabel buku.
5. Isikan data untuk tabel brg, dengan data sebagai berikut:
TUGAS 4
Pada pembahasan praktikum data manipulation language ini, akan digunakan beberapa
fungsi seperti:
Fungsi Agregasi:
Fungsi DISTINCT:
Fungsi yang digunakan untuk mengganti secara tampilan nama tabel atau nama field.
Nama Varchar 40
Kota_asal Varchar 50
Sks Int 2
Gaji double
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,
14. Buat alias untuk tabel dengan nama “tp”, kemudian tampilkan record hanya field
15. Buat alias untuk field “nama” dengan nama “nama_pengajar”, kemudian tampilkan isi
17. Buat alias dengan nama “hasil”, 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.
20. Buat alias dengan nama “tunjangan” dan merupakan hasil perkalian antara field sks
dengan “250000”, kemudian tampilkan isi record dan urutkan secara descending
2. Aktifkan kembali database yang telah dibuat dilatihan sebelumnya dengan nama
“db_dml_lanjutan”.
Nama_mtkul Varchar 30
Sks Int 2
127 Multimedia 3
8. Tampilkan jumlah data dari isi record tabel mata_kuliah. (menghitung jumlah data isi
9. Tampilkan isi record dengan menggabungkan isi data dari field “nama_mtkul” dengan
field “sks”, dengan penghubung string bernama “jumlah sks yaitu:”. (menggabungkan
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
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
13. Ubah isi record untuk nama matakuliah = “Mobile Programming I”, menjadi “Java
Programming I”.
15. Tampilkan isi record hanya field “nama_mtkul”, “sks”, dimana yang ditampilkan hanya
jumlah sks 3.
18. Ubah isi record untuk nama matakuliah = “Java II”, menjadi “Java Programming II”.
20. Tampilkan kembali seluruh isi record tabel matakuliah, dengan buat alias “Mata
Kuliah” untuk field nama_mtkul dan “Jumlah SKS” untuk field sks.
Judul Varchar 55
Pengarang Varchar 50
Penerbit Varchar 35
Harga Int 10
6. Tampilkan isi seluruh record pada tabel buku, kemudian urutkan secara descending
berdasarkan field harga.
7. Tampilkan jumlah total keseluruhan harga pada tabel buku.
8. Tampilkan data buku dengan harga paling murah.
9. Buat alias dengan nama “rata_harga” untuk mencari nilai rata-rata dari harga buku.
10. Buat alias untuk tabel dengan nama “bk”, kemudian tampilkan record hanya field
“judul”, “penerbit”, “harga”.
11. Tampilkan jumlah data dari tabel buku.
12. Buat alias dengan nama “Harga Buku”, kemudian tampilkan isi record dengan
menggabungkan isi data dari field “judul” dengan field “harga”, dengan penghubung
string bernama “harga yaitu:”
13. Ubah isi record untuk buku “Diagram UML”, menjadi “UML Dasar”.
14. Tambahkan isi record baru, yaitu kode_buku=”BK06”, judul=”Algoritma Lanjut”,
pengarang=”Raden Kraton”, penerbit=“Graha Pustaka“, harga=“40.000“.
15. Hapus isi record dengan kode_buku=BK05, lalu tampilkan isi record dari tabel buku.
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 Relationship Diagram atau
disebut dengan istilah ERD dan Logical Relational Structure atau disebut dengan istilah LRS.
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
Contoh sederhana ERD dan LRS dari studi kasus perpustakaan dijabarkan dihalaman
selanjutnya.
Didalam studi kasus ini yang akan dibahas mengenai database “perpustakaan”
yang dapat digunakan untuk pemrograman web atau desktop, serta “dapat
Berdasarkan konsep logis yang telah dibuat sebelumnya pada ERD dan LRS,
maka langkah selanjutnya membuat database fisik dengan MariaDB, sebagai berikut:
Username Varchar 25
Password Varchar 35
Tabel “katalog_buku” :
nama_katalog Varchar 45
Tabel “buku” :
judul_buku Varchar 50
pengarang Varchar 35
thn_terbit Date -
penerbit Varchar 50
Tabel “anggota” :
nama Varchar 45
no_telp Varchar 15
alamat Varchar 50
email Varchar 30
password Varchar 35
id_anggota Int 5
tgl_pinjam Date
tgl_kembali Date
jml_buku Int 2
Tabel “detail_pinjam” :
id_pinjam Int 5
id_buku Int 5
tgl_pengembalian Date
denda Double
1 Admin Admin
Tabel katalog_buku:
Id_katalog Nama_katalog
1 Sains
2 Hobby
3 Komputer
4 Komunikasi
5 Hukum
6 Agama
7 Populer
8 Bahasa
Robotika Siswoyo
1 1 2013-01-01 Wacana Ria
Sederhana Utomo
Adri
2 3 Mahir dengan PHP 2011-02-02 Pustaka Bangsa
Kusuma
Akhmad
3 2 Mahir Mewarnai 2014-03-03 CV.Indo Kreasi
Rahmat
Pambudi
6 4 Public Speaking 2015-06-06 Aldi Pustaka
Prasetyo
Ahdim
7 3 Trik SQL 2014-07-07 Wacana Ria
Makaren
Pambudi
8 6 Kemurnian Agama 2014-08-08 Aldi Pustaka
Prasetyo
Ahdim
9 1 Mikrokontroler 2012-09-09 Wacana Ria
Makaren
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.
REVIEW MATERI
TUGAS 6
a. Soal dibuat oleh Dosen Pengampu Mata Kuliah dan dikerjakan oleh
mahasiswa secara individu di kelas
b. Soal terdiri dari kombinasi pembahasan perintah DDL dan DML yang
telah dibahas pada bab-bab sebelumnya.
PHPMYADMIN
sebelumnya dibahas query-query sql pembentuk tabel dan database menggunakan tools
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
Menjalankan phpMyadmin
1. Pastikan pastikan tab MySQL dan Apache dalam kondisi Running pada Xampp Control
Ketikan pada kotak “Ciptakan/Buat database baru”, lalu klik tombol “Ciptakan/Buat”.
sebelah kiri)
Ketika telah masuk kedalam database db_perpusweb2, maka kita ketikkan nama tabel
Tabel-tabel pada latihan ini, dapat melihat struktur tabel pada db_perpusweb (bab studi
Tabel “admin” :
Username Varchar 25
Password Varchar 35
berikut ini menggunakan phpMyAdmin (lihat contoh pengerjaan pada pembuatan tabel
admin):
Tabel “katalog_buku” :
Nama_katalog Varchar 45
Tabel “buku” :
Id_katalog Int 5
Judul_buku Varchar 50
Thn_terbit Date -
penerbit Varchar 50
Tabel “anggota” :
Nama Varchar 45
No_telp Varchar 15
Alamat Varchar 50
Email Varchar 30
Password Varchar 35
Tabel “peminjaman” :
Id_anggota Int 5
Tgl_pinjam Date
Tgl_kembali Date
Jml_buku Int 2
Tabel “detail_pinjam” :
Id_pinjam Int 5
Tgl_pengembalian Date
Denda Double
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
Isilah record beberapa tabel yang telah dibuat berikut ini menggunakan phpMyAdmin
Tabel katalog_buku:
Id_katalog Nama_katalog
1 Sains
2 Hobby
3 Komputer
4 Komunikasi
5 Hukum
6 Agama
7 Populer
8 Bahasa
Robotika Siswoyo
1 1 2013-01-01 Wacana Ria
Sederhana Utomo
Adri
2 3 Mahir dengan PHP 2011-02-02 Pustaka Bangsa
Kusuma
Akhmad
3 2 Mahir Mewarnai 2014-03-03 CV.Indo Kreasi
Rahmat
Kurnia
4 1 Hukum Fisika 2013-04-04 Wacana Ria
Sandi
Mahir Bahasa
5 8 Aliuddin 2013-05-05 CV.Indo Kreasi
Inggris
Pambudi
6 4 Public Speaking 2015-06-06 Aldi Pustaka
Prasetyo
Ahdim
7 3 Trik SQL 2014-07-07 Wacana Ria
Makaren
Pambudi
8 6 Kemurnian Agama 2014-08-08 Aldi Pustaka
Prasetyo
Ahdim
9 1 Mikrokontroler 2012-09-09 Wacana Ria
Makaren
Tabel anggota:
Id_anggota Nama No_telp Alamat Email password
Pilih terlebih dahulu tabel, kemudian klik menu “Browse” untuk menampilkan isi record
pada tabel. Untuk Ubah bisa menggunakan icon pensil, sedangkan untuk Hapus bisa
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.
Pilih terlebih dahulu tabel yang akan diubah namanya, kemudian klik menu
“Operasi”.
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
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
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.
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.
2. Buat beberapa tabel pada database db_latihan_sepatu, sebagai berikut: Tabel “sepatu”:
merk Varchar 30
Ukuran Varchar 10
Harga Int 8
Tabel “pembeli”:
Nm_pembeli Varchar 35
No_hp Varchar 18
Tabel “penjualan”:
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
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”:
FK0101 S001 1
FK0101 S002 2
FK0102 S001 1
FK0103 S005 3
FK0104 S003 1
FK0104 S006 1
FUNGSI JOIN
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.
Nm_dosen Varchar 35
Thn_masuk Year -
Alamat Varchar 50
Nm_mtkul Varchar 30
Sks Int 2
101 Algoritma 4
202 PTIK 3
303 SIM 4
404 E-Commerce 2
505 Agama 3
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
12. Tampilkan daftar dosen yang mengajar mata kuliah =”SIM” menggunakan Inner Join.
13. Tampilkan hanya field “nm_dosen”, “nm_mtkul”, “thn_masuk” yang mengajar mata
untuk field “nm_mtkul”. Tampilkan hanya field NIP, alias Nama Dosen, alias Mengajar,
Fungsi Outer Join yang akan dipraktikan terdiri dari Left dan Right Outer Join. Berikut
2. Buat sebuah database dengan nama “db_join_buku”, kemudian tampilkan daftar tabel
yang ada.
Judul Varchar 40
Thn_terbit Year -
Id_kategori Int 3
Nm_kategori Varchar 30
1 PTIK 2017 1
2 SIM 2015 2
3 APSI 2014 2
4 RPL 2016 4
5 LINUX 2014 5
6 SO 2013 6
Id_kategori Nm_kategori
1 Manajemen Informatika
2 Sistem Informasi
3 Ilmu Komputer
4 Teknik Komputer
5 Jaringan Komputer
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”.
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”.
Nm_brg Varchar 45
Jumlah Int 2
Harga Int 8
4. Buat tabel bernama “tb_cust”, dengan ketentuan sebagai berikut:
Nm_cust Varchar 45
Alamat_cust Varchar 75
Telp_cust Varchar 20
1 B01 111
2 B01 113
3 B02 112
4 B02 114
5 B02 113
6 B03 115
7 B03 111
8 B04 114
9 B05 112
10 B05 113
10. Tampilkan isi record dari masing-masing tabel yang telah dibuat.
11. Berdasarkan ketiga tabel diatas, gunakan perintah Inner Join untuk menampilkan daftar
barang yang telah dibeli oleh customer bernama Ibmu Raihan.
12. Hapus isi record tabel tb_cust bernada Roberto Salim.
13. Tampilkan kembali isi record dari tabel tb_cust.
14. Ubah alamat customer pada tb_cust untuk Anto Hoed menjadi “Parung“.
15. Gunakan perintah Inner Join untuk menampilkan daftar barang yang telah dibeli oleh
customer bernama Abdul Karim.
TUGAS 8
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.
db_join_rental.
Nopol Varchar 20
Jenis_mobil Varchar 20
harga Double -
Nama Varchar 40
Alamat Varchar 70
No_telp Varchar 15
Tabel “penyewaan”:
No_ktp Char 8
Kd_mobil Char 3
Tgl_sewa Date
Tgl_kembali Date
Lama_sewa Double
Jumlah_sewa Double
Tabel penyewa:
No_ktp Nama Alamat No_telp
Tabel penyewaan:
6. Tampilkan hanya field “tgl_sewa” (data diambil dari tabel penyewaan), “nama” (data
diambil dari tabel penyewa), “kd_mobil” (data diambil dari tabel penyewaan),
7. Tampilkan hanya field “tgl_sewa” (data diambil dari tabel penyewaan), “nama” (data
diambil dari tabel penyewa), “kd_mobil” (data diambil dari tabel penyewaan),
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
Judul Varchar 50
Pengarang Varchar 45
Penerbit Varchar 40
Tabel “member”:
Field Name Type Size Keterangan
Nama_member Varchar 45
Alamat_member Varchar 60
No_telp Varchar 18
Tabel “transaksi”:
Field Name Type Size Keterangan
Id_member Char 4
Kd_komik Char 4
Tgl_beli Date
Jml_beli Double
Tabel transaksi:
Notrans Id_member Kd_komik Tgl_beli Jml_beli
1001 1001 K01 2020-01-20 4
1002 1004 K03 2020-01-21 7
1003 1005 K05 2020-01-25 5
5. Tampilkan isi record pada masing-masing tabel.
6. Tampilkan hanya field “notrans” (data diambil dari tabel transaksi), “nama_member”
(data diambil dari tabel member), “kd_komik” (data diambil dari tabel transaksi),
“jml_beli” (diambil dari tabel transaksi), serta buat alias dengan nama “subtotal” (harga
* jml_beli). Gunakan relasi Inner Join untuk menampilkan hasilnya.
REVIEW MATERI
TUGAS 9
Nama Varchar 35
Alamat Varchar 50
No_telp Varchar 20
Biaya_konsultasi Double -
Tabel pasien:
Nama Varchar 35
Alamat Varchar 50
No_telp Varchar 20
Tgl_periksa Date -
Id_pasien Int 3
Id_dokter Int 3
Biaya Double -
Tabel pasien:
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
6. Ubah size pada field “nama” tabel dokter, menjadi size = “45”.
7. Tampilkan isi record tabel dokter dengan nama dokter =”Sri Putri”.
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”).