Modul Praktik Basis Data
Modul Praktik Basis Data
Politeknik PalComTech
MULAI MATERI
Introduction
Pengenalan Materi
• Mengenalkan SQL(Structured Query Language) dalam mengelola database
• Mengenalkan fungsi-fungsi pada MySQL untuk manipulasi data
• Mengenalkan join atau relasi antar tabel
• Mengenalkan trigger dan view dalam manipulasi data
• Mengenalkan function dan store procedure
• Mengenalkan laporan dan backup database
PERTEMUAN 1
PENGENALAN MY SQL
Database Server MySQL
• MySQL merupakan database server yang
awalnya hanya berjalan pada sistem Unix dan
Linux. Seiring berjalannya waktu dan
banyaknya peminat yang menggunakan
database ini, MySQL merilis versi yang dapat
diinstal pada hampir semua platform,
termasuk windows.
Software Yang Digunakan
• AppServ
Aplikasi yang memiliki fungsi untuk menginstal beberapa
program yaitu Apache, PHP, MySQL dengan singkat. Banyak
sekali user memiliki masalah saat Install Apache, PHP, dan
MySQL karena membutuhkan waktu yang cukup lama
untuk mengkonfigurasinya. Dengan adanya Appserv dimana
beberapa Fitur Appserv adalah Apache, PHP, MySQL, dan
phpMyAdmin sehingga dapat mempermudah user dalam
membuat sebuah database. AppServ dapat berjalan di
sistem operasi Windows dan Linux.
Instalasi dan Konfigurasi AppServ
1. Siapkan software appserv versi terbaru.
Instalasi dan Konfigurasi AppServ
2. License Agreement : AppServ berada dibawah lisensi GNU/GPL. Anda harus membaca
persetujuan ini sebelum install. If you agree for this license click Next to go to next step. If
you not agree click Cancel to cancel install.
Instalasi dan Konfigurasi AppServ
3. Choose Install Location: AppServ default location is C:AppServ. If you need to change
destination click Browse botton to change your destination for AppServ program and then
click Next to go to next step.
Instalasi dan Konfigurasi AppServ
4. Select Components : AppServ default package components it's checked all package.
If you need to choose some package to install. You can click at check box.
- Apache HTTP Server is a Web Server.
- MySQL Database is a Database Server.
- PHP Hypertext Preprocessor is a PHP Programming processor.
- phpMyAdmin is a MySQL Database control via WWW. If you complete choosing it click Next
to go next step.
Instalasi dan Konfigurasi AppServ
5. Apache Configuration : This screen for specify Apache configure.
Server Name You must specify Server Name e.g. www.appservnetwork.com.
HTTP Port You must specify HTTP port for Apache Web Server.
Instalasi dan Konfigurasi AppServ
6. MySQL Configuration :
Root Password You must enger root password for MySQL Database.
Default user for this password is root .
Character Sets Specify for data storage language and collations.
Old Password If you have problem when you coding PHP code with
Old MySQL API.
And found error Client does not supportauthentication
protocol requested by server;
consider upgrading MySQL client
You must check this option to avoid error.
Enable InnoDB If you use InnoDB must check this option.
Instalasi dan Konfigurasi AppServ
Instalasi dan Konfigurasi AppServ
7. Complete AppServ setup : Setup ask for start Apache and MySQL
immediately. Click Finish to end this setup and AppServ prompt to use.
• Mengaktifkan database:
use nama_database;
• Membuat Tabel:
create table nama_table(
field1 tipe_data(scale)not null,
field2 tipe_data(scale)not null,
field3 tipe_data(scale),
...
field tipe_data(scale),
PRIMARY KEY(field_key)
);
• Menampilkan tabel yang telah dibuat:
show tables;
• Perintah untuk menambah kolom dengan menggunakan frasa first(Menambah kolom diawal
kolom tabel):
alter table nama_table add nama_field tipe_data first;
• Menghapus tabel:
drop table nama_table;
• INSERT: Perintah ini digunakan untuk menyisipkan atau memasukkan data baru ke
dalam tabel. Penggunaanya setelah database dan tabel selesai dibuat.
• SELECT: Perintah ini digunakan untuk mengambil data atau menampilkan data dari satu
tabel atau beberapa tabel dalam relasi. Data yang diambil dapat kita tampilkan dalam
layar prompt MYSQL secara langsung maupun ditampilkan pada tampilan aplikasi.
• UPDATE: Perintah ini digunakan untuk memperbarui data lama menjadi data terkini.
Jika anda memiliki data yang salah atau kurang up to date dengan kondisi sekarang,
maka dapat diubah isi datanya menggunakan perintah UPDATE.
• DELETE: Perintah ini digunakan untuk menghapus data dari tabel. Biasanya data yang
dihapus merupakan data yang sudah tidak diperlukan lagi. Pada saat menghapus data,
perintah yang telah dijalankan tidak dapat digagalkan, sehingga data yang telah hilang
tidak dapat dikembalikan.
PERINTAH INSERT
• Menambah Record Dengan Perintah Insert:
Menampilkan total beli dan total jual dari tabel data barang diatas:
select stock*harga_beli as total_beli,stock*harga_jual
as total_jual from data_barang;
Contoh Menggunakan Operator Aritmatik Di dalam Tabel
• Hasilnya:
2. Operator Pembanding
• Menampilkan data tipe motor dengan tahun garansi hanya 1 tahun dari tabel
diatas.
select*from data_tipemotor where thn_garansi=1;
• Hasilnya:
Seleksi Menggunakan Operator “!=“ atau “<>”
• Menampilkan data tipe motor dengan stock lebih dari dan sama dengan 16 unit.
select*from data_tipemotor where stock >= 16;
Seleksi Menggunakan Operator “<=”
• Menampilkan data tipe motor dengan stock kurang dari dan sama dengan 16 unit.
select*from data_tipemotor where stock <= 16;
3. Operator Logika
• Operator AND
Operator AND digunakan untuk mengambil data
dari satu atau beberapa tabel menggunakan dua
syarat atau lebih. Data akan ditampilkan apabila
dua syarat terpenuhi, sedangkan apabila salah
satu syarat saja atau tidak ada syarat yang
terpenuhi, maka perintah tidak akan
mendapatkan hasil.
Tabel kebenaran Operator AND
Menampilkan data motor yang harganya antara Rp.10 Juta sampai dengan Rp.15 Juta
dari tabel data tipe motor diatas:
select nm_tipe,harga,thn_garansi,stock from data_tipemotor
where harga >= 10000000 and harga <= 15000000;
Contoh Penerapan Operator Logika AND
• Hasilnya:
Operator Logika
• Operator OR
Digunakan untuk mengambil data dari beberapa
tabel, tetapi memiliki syarat tidak harus keduanya
bernilai benar. Jika salah satu bernilai benar,
database akan tetap menampilkan hasil sesuai
dengan permintaanya. Jika kondisi tidak ada yang
benar(semua salah), nilainya akan salah
Tabel kebenaran Operator OR
Menampilkan data motor yang garansinya lebih dari 2 Tahun atau harganya kurang dari
Rp. 10 Juta dari tabel diatas.
select nm_tipe,harga,thn_garansi,stock from data_tipemotor
where thn_garansi > 2 OR harga < 10000000;
Contoh Penerapan Operator Logika OR
• Hasilnya:
PERTEMUAN 9
FUNGSI PADA MYSQL
-FUNGSI AGREGAT, NUMERIC
-FUNGSI STRING
Fungsi Agregat
• Fungsi Agregat dalam MySQL adalah fungsi
yang menerima koleksi nilai dan
mengembalikan nilai tunggal sebagai hasilnya,
seperti: jumlah data, nilai minimun, nilai
maximum dan nilai rata-rata.
Jenis-jenis Fungsi Agregat
• Standar ISO mendefinisikan lima jenis fungsi agregat, yaitu:
1. SUM digunakan untuk menghitung total nilai dari kolom tertentu.
2. COUNT digunakan untuk menghitung jumlah record.
3. AVG digunakan untuk menampikan nilai rata-rata dari suatu
kolom.
4. MAX digunakan untuk menampikan nilai tertinggi dari suatu
kolom.
5. MIN digunakan untuk menampikan nilai terendah dari suatu
kolom.
SELEKSI PENGELOMPOKAN
• Menjumlahkan suatu bilangan dengan SUM
Sintaks:
SELECT SUM(nama_kolom) AS Nama_Alias
FROM nama_table;
Contoh:
Select SUM(harga) AS ‘Total Harga’
from barang;
SELEKSI PENGELOMPOKAN
• Menghitung Jumlah Record Dengan COUNT
Sintaks:
SELECT COUNT(nama_kolom) AS ‘Nama Alias’ FROM
nama_table;
atau
SELECT COUNT(*) AS ‘Nama Alias’ FROM nama_table;
Contoh:
Select COUNT(NPM) AS ‘Jumlah Mahasiswa’ from
mahasiswa;
atau
Select COUNT(*) AS ‘Jumlah Mahasiswa’ from mahasiswa;
SELEKSI PENGELOMPOKAN
• Mencari Nilai Rata-rata Dengan AVG
Sintaks:
SELECT AVG(nama_kolom) AS Nama_Alias FROM
nama_table;
Contoh:
Select AVG(nilai) AS ‘Nilai Rata-rata
Mahasiswa’ from nilai_mahasiswa;
SELEKSI PENGELOMPOKAN
• Mencari Nilai Minimum Dengan MIN
Sintaks:
SELECT MIN(nama_kolom) AS
Nama_Alias FROM nama_table;
Contoh:
Select MIN(nilai) AS ‘Nilai
Terendah’ from nilai_mahasiswa;
SELEKSI PENGELOMPOKAN
• Mencari Nilai Minimum Dengan MAX
Sintaks:
SELECT MAX(nama_kolom) AS
Nama_Alias FROM nama_table;
Contoh:
Select MAX(nilai) AS ‘Nilai
Tertinggi’ from nilai_mahasiswa;
FUNGSI STRING
• Fungsi yang digunakan untuk mengonversi
bentuk huruf, misalnya: dari huruf besar
menjadi huruf kecil atau sebaliknya.
Mengkonversi Format String
1. Mengkonversi Format String menjadi huruf kecil
Sintaks:
SELECT LCASE (‘String’) atau LOWER(‘String’);
Contoh:
SELECT LCASE(‘TEKNIK INFORMATIKA’);
SELECT ORD(‘A’);
Hasil:
65
• Sintaks:
select nama_table1.nama_field1,
nama_table2.nama_field2
from nama_table1 INNER JOIN nama_table2
ON nama_table1.PK=nama_table2.FK;
Inner Join
Pada gambar disamping terdapat ERD(Entity
Relationalship Diagram) dimana terdapat 2
entitas yaitu entitas jenis barang dan barang
yang saling berelasi, disebut dengan relasi 1 to
many dimana 1 jenis barang memiliki banyak
nama barang.
Inner Join
Pada gambar disamping terdapat dua table
yaitu table jenis barang dan table barang
dengan field-field sesuai dengan gambar ERD
sebelumnya dimana kedua table tersebut
saling berelasi.
Contoh Relasi Menggunakan Inner Join
• Contoh menggunakan relasi inner join dari table jenis barang dan table barang.
1. Menampilkan nama jenis dari tabel jenis barang, dan nama barang dari table barang
menggunakan relasi inner join.
select jenis_barang.nm_jenis,barang.nm_barang from jenis_barang
INNER JOIN barang ON jenis_barang.kd_jenis=barang.kd_jenis;
Contoh Relasi Menggunakan Inner Join
• BEFORE | AFTER digunakan untuk menentukan kapan proses secara otomatis akan dieksekusi,
sebelum atau sesudah proses.
• INSERT | UPDATE | DELETE digunakan untuk menentukan event yang dijadikan trigger untuk
menjalankan perintah-perintah di dalam triggers. Statement atau perintah dalam trigger dapat
berupa satu perintah saja, dan dapat juga beberapa perintah sekaligus. Jika terdapat beberapa
perintah dalam trigger, maka gunakan perintah BEGIN dan END untuk mengawali dan
mengakhiri perintah.
Bentuk Umum Trigger
• Di dalam statement trigger, kita dapat mengakses record
tabel sebelum atau sesudah proses dengan
menggunakan NEW dan OLD. NEW digunakan untuk
mengambil record yang akan diproses (insert atau
update), sedangkan OLD digunakan untuk mengakses
record yang sudah diproses (update atau delete).
Contoh Membuat Trigger Hapus
1. Membuat table penampung log_hapus_pelanggan sebelum membuat Trigger
create table log_hapus_pelanggan like pelanggan;
• Sintaks:
mysqldump –u (username) –p (password/dikosongkan) [nama_database] >
[nama_database_dibackup];
Proses BackUp Database
• Gunakan Command Prompt(CMD).
• Dengan keterangan :
mysqldump merupakan perintah untuk membackup database.
-u (username) disini akses menggunakan root
-p password dari user itu sendiri.
Hasil BackUp
Proses Restore Database
• Kembali Menggunakan Command
Prompt(CMD).
PERTEMUAN 14 - 15
• STUDI KASUS