Anda di halaman 1dari 10

Modul I

Dasar-Dasar MYSQL dan Normalisasi


Tugas Pendahuluan
1.

Sebutkan dan jelaskan dengan rinci tahapan-tahapan yang semestinya


dilakukan dalam pembuatan suatu program basis data.

2.

Sebutkan dan jelaskan dengan rinci tahapan-tahapan yang semestinya


dilakukan dalam proses normalisasi, berikan contoh untuk menggambarkan
proses yang terjadi disetiap tahapan normalisasi.

3.

Sebutkan macam-macam tipe data yang ada dalam MySQL serta kebutuhan
memory dan penggunaannya dengan jelas.

4.

Sebutkan kegunaan key dalam suatu tabel. Lalu sebutkan dan jelaskan
macam - macam key yang ada dalam konsep basisdata.

5.

Sebutkan dan jelaskan macam-macam relationship (keterhubungan) yang


ada dalam konsep basisdata.

Tugas Praktikum
Bandar Udara Ngurah Rai merupakan bandar udara internasional yang
disinggahi berbagai maskapai penerbangan tetapi hanya memiliki 3 buah landasan
pacu yang bisa digunakan secara bersamaan pada waktu yang sama. Bandar Udara
ini mentargetkan beberapa tahun kedepan memiliki lebih banyak landasan pacu
lagi.
Bandar Udara ini ingin membuat sistem untuk menjadwalkan keberangkatan
pesawat. Jadwal keberangkatan yang dibuat, akan selalu diubah setiap hari
minggu. Dalam setiap penerbangan, sebuah pesawat minimal memiliki 5 orang
awak pesawat (termasuk pilot dan co-pilot) dimana pilot dan co-pilotnya selalu
sama, sedangkan pramugarinya bisa saja berbeda. Setiap pesawat akan selalu
memiliki tujuan penerbangan masing-masing yang selalu sama.
Report
1.

Laporan jadwal penerbangan di akhir tahun

Tugas Tambahan
1.

Buatlah kamus data mengenai setiap elemen yang tertera di dalam database.

Modul II
DDL
Tugas Pendahuluan
1.

Buatlah sintaks dari masing-masing fungsi yang ada dalam Data Definition
Language (DDL) beserta contoh penggunaannya.

2.

Sebutkan dan jelaskan tipe-tipe tabel yang ada didalam MYSQL, serta
berikan contoh penggunaannya.

3.

Sebutkan dan Jelaskan macam-macam refrential integrity constraint didalam


MYSQL, serta berikan contoh penggunaannya.

4.

Bagaimana cara mengubah tipe tabel dan refrential integrity constraint


didalam MYSQL

5.

Rancanglah minimal dua buah tabel yang memiliki relasi, lalu


implementasikan semua fungsi DDL ke tabel tersebut.

Tugas Praktikum
Bisnis Proses Tabungan Koperasi:
1.

Ketika seseorang akan membuka sebuah tabungan, saldo awal yang harus
disetorkan kepada pihak bank minimal sebesar X rupiah, serta tidak ada

2.
3.
4.

jumlah maksimum yang disetorkan sesuai dengan kebijakan koperasi.


Tabungan dapat dilakukan oleh personal untuk member atau non member.
Pihak koperasi menentukan bunga per bulan yang didapat oleh nasabah.
Bunga yang diberikan koperasi berasal dari saldo rata-rata perbulan, saldo

5.

rata-rata harian, berdasarkan saldo terendah yang ditentukan oleh koperasi.


Di dalam koperasi ini juga ditentukan biaya administrasi kepada setiap
nasabah perbulannya, terdapat juga batas nominal tabungan tidak kena biaya

6.

administrasi, biaya administrasi buka, tutup, dan kehilangan buku tabungan.


Terdapat ketentuan mengenai saldo minimal yang dimiliki nasabah.
Koperasi berhak menentukan saldo minimal yang harus dimiliki nasabah.
Jadi, apabila saldo nasabah di bawah saldo minimal yang telah ditentukan
pihak koperasi, maka nasabah tidak dapat melakukan proses transaksi
penarikan tabungan.

7.

Apabila saldo nasabah mencapai 0 rupiah dan tidak pernah melakukan


transaksi dalam jangka waktu yang telah ditentukan koperasi, maka

8.

tabungan tersebut otomatis di nonaktifkan oleh pihak koperasi.


Ketika tabungan telah di nonaktifkan oleh pihak koperasi maka nasabah
tidak dapat mengaktifkan rekeningnya kembali, tetapi membuat rekening

9.

yang baru dengan nomer rekening yang berbeda.


Terdapat ketentuan dari koperasi mengenai jumlah minimal penarikan
tabungan oleh nasabah dan tidak ada jumlah maksimum penarikan.

Report
1.
2.
3.
4.
5.

Laporan pendapatan administrasi buka buku setiap periode


Laporan pendapatan administrasi tutup buku setiap periode
Laporan pendapatan administrasi bulanan
Laporan pengeluaran pajak per tabungan setiap periode
Laporan jumlah transaksi (tarik, tabung, transfer) per tabungan setiap

6.
7.
8.

periode
Laporan banyaknya nasabah yang buka tabungan setiap periode
Laporan banyaknya nasabah yang tutup tabungan setiap periode
Laporan transfer cash setiap periode

Tugas Tambahan
1.

Buatlah kamus data mengenai setiap elemen yang tertera di dalam database.

Modul III
DML

Tugas Pendahuluan
1.

Buatlah dan jelaskan sintaks dari masing-masing fungsi yang ada dalam
Data Manipulation Language (DML) beserta contoh penggunaannya dengan

2.

lengkap.
Jelaskan secara rinci perbedaan DELETE dan TRUNCATE, serta jelaskan

3.

kapan fungsi tersebut digunakan


Rancanglah minimal dua buah tabel yang memiliki relasi, lalu
implementasikan fungsi-fungsi yang sudah dijelaskan pada soal nomer 1 ke
dalam tabel tersebut,

Tugas Praktikum
Simpan Pinjam:
A.
1.

Simpanan
Anggota wajib membayar dua jenis simpanan yakin simpanan pokok dan

2.

simpanan wajib, dimana simpanan ini akan dibayar setiap awal bulan
Disampin dua simpanan diatas anggota juga membayar biaya lain seperti:
suka duka, arisan dan konsumsi, biaya ini juga dibayar setiap pertemuan

3.
B.
1.

(bisa awal bulan atau akhir bulan) sesuai dengan kondisi.


Namun point nomor 2 diatas tidak termasuk simpanan anggota.
Pinjaman
Setiap individu yang akan meminjam harus terlebih dahulu menjadi anggota

2.

koperasi dengan syarat point nomor 1 pada penjelasan simpanan.


Untuk besar pinjaman tidak terikat oleh saldo dari simpanan anggota,
artinya anggota dapat meminjam uang sebesar apapun jika di setujui oleh
pihak yang berwenang (yang mempunyai otoritas). Persetujuan yang
dimaksud adalah persetujuan dalam bentuk jaminan yang sesuai dengan

3.

batas nominal minimum dan maksimum peminjaman.


Jangka waktu pinjaman sebenarnya (10 20 bulan) hanya saja dibuat

4.

flexible, bisa kurang dan bisa lebih dari waktu pinjaman normal.
Untuk pelunasan dari pinjaman boleh kurang dari jangka waktu pinjaman,
misalnya: jangka waktu pinjaman normanya adalah 10 bulan, tetapi anggota

5.

bisa melunasinya ketika angsuran pinjaman sampai dengan 7 / 8 kali.


Bunga pinjaman diambil sebesar 1 % (satu persen) dari jumlah pinjaman
awal, misalnya: pinjaman awal adalah Rp 5.000.000,00 (lima juta rupiah)
dengan jangka waktu 10 bulan, sehingga bunga yang akan di bayar adalah
sebesar Rp. 50.000,- (lima puluh ribu rupiah) dikali dengan jangka waktu
pinjaman.

6.

Biaya administrasi langsung dipotong sebesar 1 % (satu persen) dari jumlah


pinjaman, sehingga anggota hanya menerima uang pinjaman setelah
dikurangi biaya administrasi, misalnya: pinjaman sebesar Rp. 5.000.000,(lima juta rupiah), sehingga biaya administrasinya Rp. 50.000,- (lima puluh
ribu rupiah), uang yang diterima anggota sebesar Rp. 4.950.000 (empat juta

7.

Sembilan ratus lima puluh ribu rupiah).


Bunga dan Biaya administrasi pinjaman akan di hitung sebagai pendapatan

8.

dan akan di rekap setiap bulan.


SHU (Sisa Hasil Usaha) di dapatkan dari bunga dan administrasi setelah di
rekap selama satu tahun dan hasilnya akan di bagi rata berdasarkan jumlah

anggota.
Report
Terdapat beberapa report yang digunakan untuk keperluan analisis data,
report tersebut antara lain:
1.

Report Piutang anggota, report ini berfungsi untuk menunjukkan piutang


yang dimiliki oleh koperasi kepada anggota, baik piutang detail maupun
akumlasi dari seluruh piutang anggota.

Tugas Tambahan
1.

Buatlah kamus data mengenai setiap elemen yang tertera di dalam database.

Modul IV
DML LANJUTAN
Tugas Pendahuluan
1.

Jelaskan mengenai query nested, group by, order by dan Alias didalam
MYSQL beserta contoh penggunaanya.

2.

Sebutkan dan jelaskan macam-macam query union didalam MYSQL beserta


contoh penggunaanya.

3.

Jelaskan secara rinci perbedaan HAVING dan WHERE dalam MYSQL

4.

Sebutkan dan jelaskan sintaks dari masing-masing query join beserta contoh
penggunaannya dengan lengkap

5.

Buatlah dan jelaskan sintaks dari masing-masing fungsi yang ada dalam
query

aggregation

(COUNT,

SUM,

AVERAGE,

MAX,

MIN,

GROUP_CONCAT ) beserta contoh penggunaannya dengan lengkap.


6.

Sebutkan dan jelaskan fungsi built-in yang terdapat dalam MYSQL beserta
contoh penggunaanya.

Tugas Praktikum
PT. Kereta Api Indonesia berencana untuk mempermudah calon penumpang
kereta dalam melakukan pembelian tiket secara online di pulau Jawa. Seorang
pegawai IT pada PT. KAI dimintai bantuan untuk membuat sebuah database
sehingga dapat mempermudah proses pembelian tiket online tersebut. Direktur
PT. KAI menginginkan hal-hal berikut ini dapat dilakukan oleh calon penumpang:
1.

Calon penumpang dapat melakukan pendaftaran pada situs PT.KAI dengan


memasukkan data pribadi mereka. Setelah calon penumpang melakukan
pendaftaran, status mereka akan berubah menjadi member.

2.

Member dapat melakukan Sign In.

3.

Member dapat melakukan pembelian tiket sesuai jadwal sebanyak apapun,


tergantung ketersediaan kursi kereta.

4.

Member dapat membeli tiket untuk dirinya sendiri maupun untuk orang lain
dengan memasukkan no. ktp, nama lengkap, alamat dan nomor telepon,
kemudian memilih kategori anak-anak atau dewasa lalu memilih nomor
kursi.

5.

Member dapat melakukan pembatalan tiket maksimal 3 hari sebelum


keberangkatan.

6.

Member harus melakukan pembayaran sejumlah tiket yang dibeli pada suatu
hari maksimal 3 hari sebelum keberangkatan. Jika member tidak melakukan
pembayaran hingga batas yang ditentukan maka tiket otomatis akan
dibatalkan.

7.

Setelah melakukan pembayaran di bank, member harus memasukkan nomor


pembayaran yang didapatkan dari bank pada situs untuk disimpan di
database sehingga dapat dilakukan pengecekan oleh pegawai.
Selain beberapa hal tersebut direktur PT. KAI juga ingin memudahkan

pendataan pegawai kereta yang terbagi menjadi operator dan administrator.


Operator akan didaftarkan oleh administrator lengkap dengan data diri dan akan
mendapatkan username dan password acak yang nantinya dapat diubah oleh
masing-masing operator. Operator juga dapat melakukan sign in seperti member.
Administrator memiliki kedudukan tertinggi. Setelah melakukan sign in
administrator harus memasukkan jadwal keberangkatan kereta, memasukkan
kategori penumpang, memasukkan rangkaian kereta, memasukkan data kereta,
memasukkan jurusan kereta, memasukkan stasiun kereta, dan memasukkan kelas
kereta (bisnis, eksekutif, dll.).
Harga tiket yang harus dibayar member dihitung berdasarkan jurusan yang
ditempuh dikali dengan persentase harus bayar pada kategori penumpang (missal
dewasa membayar 100% dan anak-anak membayar 75%) ditambah dengan biaya
akomodasi dari kelas kereta (missal kelas bisnis memiliki biaya akomodasi
sebesar 500 ribu).
Permintaan dari direktur tersebut cukup rumit bagi si pegawai IT, oleh
karena itu bantulah pegawai IT yang malang tersebut untuk menentukan tabeltabel serta kolom-kolom yang harus tersedia dalam database kereta api lengkap
dengan relasinya.

Report
1.

Banyaknya jumlah member

2.

Banyaknya jumlah tiket yg terjual perperiode

3.

Banyaknya pembatalan tiket yang dilakukan per member

4.

Jurusan yg paling banyak dituju

5.

Kategori penumpang yang paling banyak naik kereta

Tugas Tambahan
1.

Buatlah kamus data mengenai setiap elemen yang tertera di dalam database.

Modul V
DCL
Tugas Pendahuluan
1.

Jelaskan mengenai query GRANT, REVOKE didalam MYSQL beserta


contoh penggunaannya.

2.

Jelaskan bagaimana cara mengubah password seorang user dalam MYSQL,


berikan contoh penggunaannya.

3.

Sebutkan dan jelaskan macam-macam hak akses tingkat user dalam


MYSQL beserta contoh penggunaannya.

4.

Sebutkan dan jelaskan macam-macam hak akses tingkat administrator


dalam MYSQL beserta contoh penggunaannya.

5.

Buatlah dan jelaskan sintaks untuk melakukan backup database dengan cara
export dan import database dalam bentuk file *.sql.

Tugas Praktikum
Deposito:
1.

Deposito secara umum


Deposito hanya dapat dilakukan oleh anggota koperasi dari setiap koperasi

2.

yang bersangkutan
Deposito dibagi menjadi dua yaitu Deposito Berjangka dan Sertifikat

3.
4.

Deposito.
Deposito hanya dapat dilakukan dengan mata uang rupiah
Jangka waktu deposito ada yang harian dan ada yg bulanan dan tahunan.1

5.

bulan dihitung 30 hari dan 1 tahun dihitung 365 hari


Besarnya Bunga deposito dan pinalty ditentukan berdasarkan jenis jangka

6.

waktu waktu deposito


Setiap koperasi memiliki batas minimal dan maksimal dari deposito yang

7.

dilakukan oleh anggota koperasi.


Sebelum jatuh tempo deposito Berjangka, anggota koperasi tidak

A.

diperbolehkan melakukan transaksi penarikan terhadap uang yang telah


didepositokannya, jika melakukan penarikan akan dikenakan pinalti dari
8.

koperasi yang bersangkutan.


Jangka waktu setiap deposito ditentukan oleh jenis deposito yang pilih oleh

9.
10.

anggota koperasi berdasarkan layanan yang disediakan oleh koperasi.


Bunga deposito akan diberikan diakhir periode oleh koperasi
Besarnya bunga deposito sesuai dengan jangka waktu deposito yang dipilih

11.

oleh anggota koperasi


Bunga dapat diambil dan ditransferkan ke rekening lain oleh anggota

12.

koperasi yang mendaftarkan deposito tersebut.


Setiap bunga yang didapatkan akan dikenai pajak sesuai dengan syarat dari

13.

setiap koperasi.
Anggota koperasi dapat melakukan perpanjangan deposito dengan syarat
lamanya perpanjangan mengikuti jangka waktu deposito sebelumnya dan
berlaku otomatis jika telah melewati batas waktu

14.
15.

Terdapat layanan perpanjangan deposito otomatis


Deposito berjangka tidak dapat dicairkan oleh orang lain selain member

16.

yang terdaftar saat melakukan deposito


Sertifikat Deposito dapat dipindahtangankan, diperjualbelikan, dan dapat

dicairkan oleh siapa saja.


Report
Terdapat beberapa report yang digunakan untuk keperluan analisis data,
report tersebut antara lain:
1.

Report list setiap deposito setiap anggota koperasi, report ini berfungsi
sebagai pelaporan jumlah anggota koperasi yang akan mencapai jatuh tempo
deposito, report ini akan menghasilkan dua buah laporan yaitu laporan

2.

deposito berjangka dan setifikat deposito.


Report pinalti deposito, report ini berfungsi sebagai laporan untuk
perhitungan denda yang dilakukan oleh anggota koperasi karena menarik

3.

uang deposito sebelum jatuh tempo.


Report list setiap deposito berdasarkan jangka waktu deposito, report ini
berfungsi sebagai pemberi keputusan kepada manajemen agar jangka waktu

4.

deposito yang sepi peminat dapat dilakukan perubahan.


Report Sertifikat deposito, report ini berfungsi untuk laporan pindah tangan

5.

dari setiap deposito


Report deposito, report ini akan diberikan kepda anggota koperasi sebagai

6.

feedback bahwa anggota tersebut telah berhasil melakukan deposito.


Report deposito jatuh tempo dan pembayaran bunga jatuh tempo, untuk
menyiapkan dana untuk pembayaran deposito jatuh tempo (pake range
tanggal) termasuk pendapatan pinalty.

Tugas Tambahan
1.

Buatlah kamus data mengenai setiap elemen yang tertera di dalam database.