Modul Praktikum BASIS DATA 2021-2022-1
Modul Praktikum BASIS DATA 2021-2022-1
KATA PENGANTAR
Segala puji dan syukur kehadirat Allah SWT yang Maha Pengasih dan Penyayang atas
segala berkah dan anugerah-Nya yang telah dilimpahkan kepada kita semua sehingga
penyusunan Modul Praktikum Basis Data ini berhasil diselesaikan dengan baik. Modul
Praktikum ini merupakan panduan untuk pembelajaran berbasis praktik bagi mahasiswa yang
dilakukan di Laboratorium. Materi pada Modul Praktikum ini disusun sesuai dengan materi
yang disampaikan pada Teori Basis Data.
Modul Basis Data ini membahas tentang tahapan Analisa kebutuhan data dalam
menghasilkan suatu informasi, pembuatan desain basis data pengolahan data dengan
menggunakan Bahasa Basis Data untuk menghasilkan informasi yang dibutuhkan oleh suatu
organisasi, perusahaan atau instansi.
Penulisan Modul Basis Data ini masih memiliki banyak kekurangan. Masukan dan
arahan dari berbagai pihak sangat dibutuhkan untuk melakukan evaluasi proses pembelajaran
di Laboratorium.
Penulis
1. Praktikan wajib membawa Modul Praktikum, bagi praktikan yang tidak membawa
Modul Praktikum tidak diperkenankan mengikuti praktikum
2. Praktikan mengenakan pakaian yang sesuai dengan ketentuan (harus baju
berkerah/tidak diperkenankan menggunakan baju kaos/t-shirt)
3. Praktikan diwajibkan dating 15 menit sebelum waktu praktikum dan masuk
Laoratorium Komputer tepat pada waktunya
4. Selama berada di dalam Laboratorium Komputer, praktikan wajib menaati Laboran
atau Dosen Pengampu dan Tata Tertib yang berada di Laboratorium Komputer
5. Praktikan wajib mengganti peralatan di Laboratorium Komputer jika kedapatan
merusak atau menghilangkan peralatan tersebut (baik sengaja maupun tidak sengaja)
Prosedur Pelaksanaan:
1. Mahasiswa mengerjakan Langkah Praktikum sesuai arahan yang ada pada Modul
Praktikum
2. Mahasiswa wajib menyelesaikan tugas praktikum yang ada pada modul praktikum
3. Mahasiswa melakukan penilain hasil praktikum kepada Dosen atau Asisten praktikum
4. Mahasiswa wajib membuat Laporan tiap modul setelah melaksananak kegiatan
praktikum untuk tiap modul.
5. Mahasiswa harus mengikuti seluruh peraturan yang ada dengan sebaik-baiknya.
6. mahasiswa yang tidak mengikuti kegiatan praktikum kurang dari 30% pelaksanaan
praktikum keseluruhan akan dianggap tidak lulus dan harus mengulang pada semester
depan
Aturan Penilaian:
Keberhasilan Parktikum (dosen/asisten) : 30%
Tanya Jawab hasil praktikum (dosen/asisten) : 30%
Laporan praktikum (dosen pengampu) : 20%
Kedisiplinan dan Kehadiran (dosen pengampu) : 20%
A. Capaian Pembelajaran
Mahasiswa mampu mendefinisikan, menganalisa dan merancang kebutuhan Basisdata
sesuai dengan studi kasus.
B. Tujuan Pembelajaran
1. Mahasiswa mampu mendefinisikan kebutuhan data dalam sebuah basisdata
2. Mahasiswa mampu menganalisa kebutuhan data dalam sebuah basisdata
3. Mahasiswa mampu membuat desain dan merancang kebutuhan data dalam sebuah
basisdata
C. Teori
1. BASIS DATA
Basis data, terdiri dari dua kata yaitu BASIS dan DATA. Basis dapat diartikan berupa
Gudang atau tempat mengumpulkan. Sedangkan data dapat diartikan sebagai suatu
kumpulan fakta dari dunia nyata yang mewakilkan sebuah objek baik manusia, barang atau
informasi lainnya. Sehingga dapat diambil kesimpulan bahwa basis data merupakan
kumpulan data yang didalamnya terdapat satua atau lebih data/informasi yang terhubung
satu dengan yang laiinnya, dapat diproses sehingga menghasilkan informasi yang sesuai
dengan kebutuhan pengguna (ruang guru, 2018).
Database Manajemen Sistem (DBMS) merupakan suatu aplikasi yang digunakan untuk
mentrasnformasikan desain basis data menjadi sekumpulan table yang saling terintegrasi
satu dengan yang lainnya. Contoh DBMS: MySQL, Postgre SQL, SQL Server, Access,
Oracle dan lain-lain.
Sistem Basis Data merupakan kumpulan basis data yang saling terintegrasi satu dengan
yang lain dan telah ditrasnformasikan dalam sebuah DBMS dan digunakan untuk mengolah
data suatu Sistem Informasi oleh penggunanya.
2. total_bayar = harga*jum_beli
(harga,jum_beli) → total_bayar
// total_bayar bergantung pada harga dan jum_beli
e. Determinant: setiap atribut yang mempengaruhi atribut lainnya dan memiliki sifat unit
disebut sebagai suatu determinant
Contoh : NIM→nama_mahasiswa
//NIM merupakan suatu determinant, karena mimiliki sifat unik dan
mempengaruhi atribut lainnya pada entitas mahasiswa
f. Primary Key: merupakan suatu atribut dari entitas yang memiliki sifat unik, konsisten,
mudah diingat dan dapat membedakan data satu dengan data lain pada sebuah table.
Contoh: NIM merupakan primary key dari table mahasiswa
g. Foreign Key: merupakan primary key yang menjadi reference pada entitas lain
Contoh: MAHASISWA (NIM, nama_mahasiswa, tempat_lahir_mahasiswa,
tgl_lahir_mahasiswa, alamat_mahasiswa, tlp_mahasiswa)
MATAKULIAH (kode_matkul, nama_matkul, sks)
NILAI (no_nilai, NIM, kode_matkul, Nilai_tugas, nilai_uts, nilai_uas)
// NIM dan kode_matkul merupakan foreign key pada entitas NILAI
Jenis-jenis atribut :
3) Atribut Multivalue: atribut yang memiliki nilai lebih dari satu yang
menggambarkan informasi dari suatu entity
4) Atribut Composite: atribut yang terdiri dari beberapa atribut lain dan
memiliki arti
d. Derajat Relasi
1. Unary: relasi yang terjadi suatu entitas dengan entitas itu sendiri
e. Cardinality
1. One to One (1 : 1) → Setiap entitas pada entitas A berhubungan paling banyak
dengan satu entitas pada entitas B, dan begitu sebaliknya.
A B
a b
b
a b
a b
b
3. Many to One (M : 1) → Setiap entitas pada entitas A dapat berhubungan dengan
paling banyak satu entitas pada entitas B, tetapi tidak sebaliknya.
A B
a b
a
a b
a b
a
4. Many to Many (M : N) → Setiap entitas pada entitas A dapat berhubungan
dengan paling banyak satu entitas pada entitas B, demikian sebaliknya
sebaliknya.
A B
a b
a b
a b
a b
f. Batasan Partisipasi (Participation Constraint) sebuah Relasi: Batasan Partisipasi:
merupakan apakah keberadaan sebuah entitas tergantung pada hubungannya ke
entitas lain melalui jenis relasinya. Terdapat 2 jenis Batasan Partisipasi:
1. Partisipasi Total
Misalnya: partisipasi pegawai dalam relasi “bekerja untuk”, memberikan arti
bahwa setiap data pada pegawai harus direlasikan pada sebuah departemen, atau
tidak ada data pegawai yang tidak berelasi dengan data departemen.
2. Partisipasi Sebagian
D. Langkah Praktikum
1. Bacalah dengan cermat permasalahan di bawah ini:
Soal Analisa:
Dalam kegiatan akademik UNIVERSITAS PGRI MADIUN (UNIPMA), manajemen
menghimbau untuk memberikan pelayanan ekstra untuk menunjang proses kegiatan
akademik maupun non akademik. Salah satu proses bisnis yang berjalan di UNIPMA
adalah layanan akademik dalam hal Registrasi, Pemrograman KRS, Perkuliahan, Ujian
dan Penilaian. Untuk memperlancar proses bisnis yang ada, manajemen UNIPMA
menghimbau untuk memanfaatkan Teknologi Informasi dan Sistem Informasi (TI/SI).
Salah satu komponen pembentukan Sistem Informasi yaitu adalah penyimpanan,
pengolahan dan pelaporan data. Sebagai salah satu TEAM Pengembang Sistem
Informasi anda bertugas untuk melakukan Desain Database Sistem Informasi
Akademik UNIPMA yang mencakup proses:
a. Mahasiswa adalah pelaku utama dalam Sistem Informasi Akademik ini
b. Setiap mahasiswa merupakan bagian dari Program Studi yang diidentifikasi dengan
NIM
Ex. NIM = 20121009 → keterangan :
1) “20” → mahasiswa angkatan tahun 2020
2) “1” → mahasiswa program SARJANA/S1
3) “2” → mahasiswa Fakultas Teknik
4) “1” → mahasiswa Program Studi Teknik Informatika
5) “009” → nomor urut mahasiswa
c. Diawal semester mahasiswa harus melakukan pembayaran untuk dapat mengikuti
perkuliahan pada semester berjalan
d. Setiap mahasiswa yang sudah melakukan registrasi dapat memprogram matakuliah
(KRS)
e. Hasil pengisian KRS mahasiswa menjadi informasi bagi BAAK untuk menerbitkan
prosensi berdasarkan JADWAL Matakuliah yang diampu oleh Dosen dari Program
Studi
E. Tugas Praktikum
1. Gambarkan ER-Diagram dari hasil Analisa permasalahan di atas.
A. Capaian Pembelajaran
Mahasiswa mampu membuat desain basis data dengan menggunakan command prompt
B. Tujuan Pembelajaran
1. Mahasiswa mampu menganalisa struktur entitas untuk menghasilkan informasi sesuai
kebutuhan
2. Mahasiswa mampu membuat desain basis data dengan command prompt
C. Teori
D. Langkah Praktikum
1. Buka Xampp Control Panel
5. Menggunakan database
9. Tabel Kuliah
E. Tugas
Buatlah tabel seperti desain di bawah ini:
A. Capaian Pembelajaran
Mahasiswa mampu mentrasnformasikan menguasai perintah data definition language.
B. Tujuan Pembelajaran
1. Mahasiswa mampu mengenal data definition language.
2. Mahasiswa mampu mengimplementasikan alter, modify, drop, rename
C. Teori
DDL adalah singkatan dari Data Definition Language yaitu kumpulan perintah pada
SQL untuk menggambarkan desain dari database secara menyeluruh, selain itu DDL (Data
Definition Language) juga digunakan untuk membuat, merubah maupun menghapus
struktur atau definisi tipe data dari obyek yang ada pada database.
DDL (Data Definition Language) berfungsi untuk membuat, merubah dan menghapus
struktur data pada database.
D. Langkah Praktikum
1. Perintah Alter
Ada empat macam perubahan yang dapat dilakukan terhadap struktur tabel yaitu:
a. Perubahan terhadap nama field/kolom
b. Perubahan terhadap tipe data
c. Penambahan field
d. Penghapusan field
Perubahan yang terjadi hanya pada tipe data yang digunakan oleh field/kolom tertentu.
Tipe data baru langsung disebutkan di belakang nama field/kolom, tanpa harus
menyebutkan tipe data lama. Untuk merubah tipe data tersebut digunakan perintah
Modify.
Perintahnya:
Menambah Field
Struktur tabel akan berubah dengan bertambahnya field/kolom baru di dalamnya.
Untuk menambahkan field baru dapat digunakan perintah Add.
Perintahnya:
Alter Table [Nama_Table] Add [Nama_Field_Baru] [Tipe_Data (Size)];
2. Perintah Drop
Menghapus Table
Jika table yang dibuat tadi sudah tidak dibutuhkan, table bisa dihapus. Sehingga
ingin menghapusnya maka dapat digunakan perintah Drop Table.
E. Tugas
1. Buat database “Order” dan buat tabel customer dengan field sebagai berikut:
Field Tipe Data Keterangan
KodeCus Integer Primary key
Nama Varchar (10)
Alamat Varchar (50)
A. Capaian Pembelajaran
Mahasiswa mampu mengenal dan memahami Structure Query Language (SQL) dalam
Data Manipulation Language (DML)
B. Tujuan Pembelajaran
1. Mahasiswa mampu melakukan manipulasi data dalam bentuk INSERT.
2. Mahasiswa mampu melakukan manipulasi data dalam bentuk UPDATE.
3. Mahasiswa mampu melakukan manipulasi data dalam bentuk DELETE
C. Teori
1. INSERT TABLE
Insert merupakan perintah yang dapat digunakan untuk melakukan input data ke dalam
tabel yang sudah ada.
Perintahnya:
Insert Into [Nama_Table] Values ([Isi_Field_1], [Isi_Field_2], … , [Isi_Field_N]) ;
Atau dengan
perintahnya:
Insert Into [Nama_Table] ( [Nama_Field_1], [Nama_Field_2], … , [Nama_Field_N])
Values ([Isi_Field_1], [Isi_Field_2], … , [Isi_Field_N]) ;
3. UPDATE TABLE
Update merupakan perintah yang dapat digunakan untuk melakukan perubahan
terhadap data yang sudah ada/dibuat.
Perintahnya:
Perintahnya:
Perintahnya:
A. Capaian Pembelajaran
Mahasiswa mampu memahami dan menggunakan statemen SELECT untuk memanipulasi
data dengan perintah SQL
B. Tujuan Pembelajaran
1. Mahasiswa mampu menerapkan beberapa statemen SELECT
2. Mahasiswa mampu menerapkan statemen SELECT dengan klausa WHERE
3. Mahasiswa mampu menerapkan statemen SELECT dengan GROUP BY dan ORDER
BY
4. Mahasiswa mampu menerapkan statemen SELECT dengan LIMIT
5. Mahasiswa mampu membuat KOLOM ALIAS dan TABEL ALIAS
C. Teori
1. Menampilakn seluruh data atau record dalam tabel
Menampilkan seluruh data atau record dalam tabel dengan menggunakan perintah
SELECT, berikut format penulisannya.
2. Menampilkan data atau record tertentu dalam tabel dengan klausa WHERE
Menampilkan data atau record tertentu dalam tabel dengan menggunakan perintah
SELECT yang menyertakan klausa WHERE, berikut format penulisannya.
Perintah DISTINCT digunakan untuk mengambil data yang sama, jika ada data yang
sama maka hanya salah satu data saja yang akan ditampilkan.
8. Menggunakan ALIAS
ALIAS digunakan untuk mengubah nama tabel/kolom sesuai dengan kebutuhan query
agar lebih jelas dalam mengolah data. ALIAS dapat digunakan untuk mengubah nama
TABEL atau KOLOM.
• Kolom ALIAS
D. Langkah Praktikum
1. Menampilkan seluruh data mahasiswa
3. Menampilkan data mahasiswa hanya kolom nama, prodi dan alamat saja.
E. Tugas
1. Tampilkan data mahasiswa yang mahasiswa yang alamatnya Madiun
2. Tampilkan data matakuliah yang memiliki SKS 3
3. Kelompokkan data matakuliah sesuai dengan jumlah SKS 1
4. Tampilkan data nilai dengan kolom NIM, Nilai_akhir dan Nilai_Huruf
A. Capaian Pembelajaran
Mahasiswa mampu memahami dan menerapkan OPERATOR dan FUNGSI dengan
menggunakan SQL
B. Tujuan Pembelajaran
1. Mahasiswa mampu menerapkan Operator LOGIKA
2. Mahasiswa mampu menerapkan Operator Aritmatika
3. Mahasiswa mampu menerapkan Operator Perbandingan
4. Mahasiswa mampu menerapkan Between dan Non Between
5. Mahasiswa mampu menerapkan operator LIKE dan NOT LIKE
6. Mahasiswa mampu menerapkan FUNGSI
C. Teori
1. Operator
a. Operator Logika
Operator dalam MySQL yaitu AND dan OR. Argument dari logika AND dan OR
adalah sebagai berikut:
P1 P2 HASIL
AND
True True True
True False False
False True False
False False False
OR
True True True
True False True
False True True
False False False
b. Operator Aritmatika
Operator aritmatika digunakan untuk melakukan operasi bilangan. Berikut
beberapa operator aritmatika yang digunakan dalam MySQL.
2. FUNGSI
Fungsi agregat berhubungan dengan statistik seperti nilai rata-rata, nilai varian standar,
nilai terbesar dan nilai terkecil. Beberapa fungsi AGREGAT yang sering digunakan :
D. Langkah Praktikum
1. Operator Between
Menampilkan tabel mata kuliah yang semester antar 1 sampai 3
2. Operator like
Menampilkan data matakuliah yang Nama_MtKul berawalan “B” dengan
menggunakan operator LIKE
E. Tugas
1. Tampilkan data Jadwal Kuliah yang dilakukan pada hari senin dan jam ke-1 sampai
dengan jam ke-3
2. Hitung nilai_akhir dengan ALIAS NA, rumus NA = (UTS+UAS+TUGAS+Presensi)/4
3. Tampilkan data mahasiswa yang mendapat nilau UTS >75
4. Tampilkan data dosen yang memiliki nama dengan awalah A
5. Berapa jumlah data mahasiswa
6. Berapa nilai rata UTS mahasiswa
7. Nama database dan nama tabel diakhiri dengan NIM masing-masing
8. Soal nomor 1 dan nomor 2 yang dikerjakan di commond prompt harus di screenshot
dan paste di microsoft word diberi nama Tugas6_NIM
A. Capaian Pembelajaran
Mahasiswa mampu memahani dan menerapkan akses data dari beberapa tabel dengan SQL
B. Tujuan Pembelajaran
1. Mahasiswa mampu menerapkan akses data dari beberapa tabel dengan klausa WHERE
2. Mahasiswa mampu menerapkan akses data dari beberapa tabel dengan JOIN
C. Teori
1. Select dua tabel atau lebih
Mengakses data dari beberapa tabel sama dengan mengakses data dari tabel yang saling
memiliki ketergantungan ( hubungan antar tabel ). Pembahasan hubungan antar tabel
telah diperjelas pada pertemuan sebelumnya. Dengan perintah SQL data dari beberapa
tabel juga dapat diakses, berikut perintah SQL:
2. Inner Join
Inner join digunakan untuk menghubugkan tabel secara dua arah, sehingga tidak ada
data yang bernilai NULL pada setiap sisi, berikut perintah SQL:
3. Outer Join
Outer Join digunakan untuk menghubungkan tabel secara satu arah, sehingga
memungkinkan adanya data yang bernilai NULL (kosong) pada satu sisi. Outer Join
terbagi menjadi 2 (dua) yaitu LEFT JOIN dan RIGHT JOIN.
LEFT JOIN
RIGHT JOIN
D. Langkah Praktikum
1. Select dua tabel atau lebih
Menampilkan nilai dari mahasiswa yang bernama “Anita”
2. Inner Join
3. Outer Join
Left Join
E. Tugas
1. Tampilkan data mahasiswa yang mendapatkan nilai_huruf A
2. Tampilkan data dosen yang mengajar matakuliah Basis data
3. Tampikan data matakuliah yang diselenggarakan pada hari SENIN
4. Tampikan data mahasiswa yang mengambil matakuliah Basis Data
5. Tampilkan nilai_akhir mahasiswa yang mengikuti matakuliah Basis Data (dengan
menggunakan perhitungan NA=(UTS+UAS+TUGAS+PRESENSI)/4
6. Nama database dan nama tabel diakhiri dengan NIM masing-masing
7. Soal nomor 1 dan nomor 2 yang dikerjakan di commond prompt harus di screenshot
dan paste di microsoft word diberi nama Tugas7_NIM
A. Capaian Pembelajaran
Mahasiswa mampu memahami dan menerapkan STRUKTUR KONDISI dengan perintah
SQL
B. Tujuan Pembelajaran
1. Mahasiswa mampu menerapkan Logika IF
2. Mahasiswa mampu menerapkna Logika Nested IF
C. Teori
Ekspresi Logika digunakan untuk melakukan pengujian suatu nilai. Dalam MySQL
terdapat dua ekspresi logika yaitu Logika IF dan Logika CASE.
1. Logika IF
Logika If adalah salah satu fungsi untuk mengetes suatu kondisi. Jika kondisi bernilai
benar, maka fungsi IF akan mengembalikan nilai_benar, jika tidak benar maka akan
mengembalikan nilai_salah.
Logika IF hanya dapat digunakan untuk menguji satu kondisi saja.
2. Logika Nested IF
Logika Nested IF digunakan untuk melakukan pengujian lebih dari satu kondisi.
SELECT kolom,
IF(kondisi1,ekspresi true,
IF(kondisi2,ekspresi true,
ekspresi false))) AS nama_kolom_alias
FROM nama_tabel;
3. Penggunaan CASE
D. Langkah Praktikum
Menampilkan alamat menggunakan CASE
E. Tugas
1. Buat query SQL dengan Ekspresi Logika IF
Mahasiswa yang melakukan pembayaran dapat melakukan registrasi, sedangkan yang
belum melakukan pembayaran tidak dapat melakukan registrasi
2. Buat query SQL dengan Ekspresi CASE
Mahasiswa yang mendapat nilai 80 s/d 100, predikat SANGAT MEMUASKAN
Mahasiswa yang mendapat nilai 60 s/d 79, predikat MEMUASKAN
Mahasiswa yang mendapat nilai 45 s/d 59, predikat CUKUP
Mahasiswa yang mendapat nilai 0 s/d 44, predikat KURANG
3. Nama database dan nama tabel diakhiri dengan NIM masing-masing
4. Soal nomor 1 dan nomor 2 yang dikerjakan di commond prompt harus di screenshot
dan paste di microsoft word diberi nama Tugas8_NIM
A. Capaian Pembelajaran
Mahasiswa mampu memahami dan menerapkan Store Procedure dengan SQL
B. Tujuan Pembelajaran
1. Mahasiswa mampu memahami pemanfaatan Store Procedure pada MySQl
2. Mahasiswa mampu menerapkan Store Procedure dengan perintah SQL pada
permasalahan sederhana
C. Teori
Store Procedure merupakan sekumpulan perintah SQL yang dapat dijalankan pada tempat
yang berbeda dan tersimpan (stored) pada server database.
Manfaat Store Procedure:
a) Menyederhanakan perintah SQL, tanpa harus mengulang penulisan perintah cukup
dengan memanggil nama Procedure dengan CALL
b) Eksekusi perintah SQL lebih cepat dijalankan karena perintah tersimpan dalam server
database.
c) Hanya sekali penulisan perintah SQL dan dapat dijalankan lebih dari satu kali ditempat
yang berbeda.
Perintah SQL:
DELIMITER $$
CREATE PROCEDURE nama_procedur()
BEGIN
//perintah;
END$$
DELIMITER $$
CREATE PROCEDURE nama_procedur(nilai_parameter)
BEGIN
//perintah;
END$$
CALL nama_procedure ()
CALL nama_procedure(nilai_parameter)
D. Langkah Praktikum
E. Tugas
1. Buat procedure untuk menampilkan nama, alamat sebagai parameter keluaran pada
tabel mahasiswa
2. Buat procedure untuk menampilkan nama, alamat sebagai parameter keluaran dan prodi
sebagai parameter input pada tabel mahasiswa
A. Capaian Pembelajaran
Mahasiswa mampu memahami dan menerapkan Store Function dengan SQL
B. Tujuan Pembelajaran
1. Mahasiswa mampu memahami pemanfaatan Store Function pada MySQl
2. Mahasiswa mampu menerapkan Store Function dengan perintah SQL pada
permasalahan sederhana
C. Teori
Store Function merupakan serangkaian perintah yang dapat ditulis sendiri dan dapat
dijalankan pada tempat yang berbeda.
Karekteristik Store Function:
Pernyataan awal yang harus ada untuk memulai store function adalah CREATE
FUNCTION.
Perintah SQL:
DELIMITER $$
CREATE
/*[DEFINER = { user | CURRENT_USER }]*/
FUNCTION `sisteminformasi`.`nama_function`()
RETURNS TYPE
/*LANGUAGE SQL
| [NOT] DETERMINISTIC
| { CONTAINS SQL | NO SQL | READS SQL DATA | MODIFIES SQL DATA }
| SQL SECURITY { DEFINER | INVOKER }
| COMMENT 'string'*/
BEGIN
A. Langkah Praktikum
END$$
Membuat FUNCTION untuk menampilkan nama mahasiswa
DELIMITER ;