NIM :
KELAS :
Buku Praktikum
Daftar Isi
Daftar Isi........................................................................................................................................................1
PENGENALAN DATABASE MYSQL.......................................................................................................3
Pengenalan MySQL...................................................................................................................................3
Format Perintah..........................................................................................................................................4
Start dan Stop MySQL...............................................................................................................................5
Database dan Tabel........................................................................................................................................8
Pembuatan Database Baru MySQL...........................................................................................................8
Pembuatan Tabel MySQL (create tabel)....................................................................................................8
Mendefinisikan Null /Not Null..................................................................................................................9
Mendefinisikan Primary Key pada Tabel..................................................................................................9
Menghapus Primary Key Pada Tabel........................................................................................................9
Menambah Kolom Baru pada Tabel..........................................................................................................9
Mengubah Tipe Data atau Lebar Kolom pada tabel................................................................................10
Mengubah Nama Kolom..........................................................................................................................10
Menghapus Kolom pada Tabel................................................................................................................10
Manipulasi dan Retrive Data I.....................................................................................................................12
Pengisian Data (INSERT)........................................................................................................................12
Sistem Informasi – UNUGIRI 2021
ANY.....................................................................................................................................................17
ALL......................................................................................................................................................17
Sintak ORDER BY..................................................................................................................................17
Sintak DISTINCT....................................................................................................................................18
UNION, INTERSECT dan EXCEPT......................................................................................................18
UNION.................................................................................................................................................18
INTERSECT........................................................................................................................................18
EXCEPT..............................................................................................................................................18
Fungsi Agregat.............................................................................................................................................22
COUNT....................................................................................................................................................22
SUM.........................................................................................................................................................22
AVG.........................................................................................................................................................22
MIN..........................................................................................................................................................22
MAX........................................................................................................................................................22
Retrive, Group dan Filter.............................................................................................................................25
Pattern Matching..........................................................................................................................................27
Relasi Tabel.................................................................................................................................................30
Join...............................................................................................................................................................33
Inner Join.................................................................................................................................................33
Left Join...................................................................................................................................................33
I. Tujuan:
Setelah mengerjakan LKP 1 ini, anda diharapkan dapat:
1. Mengenal ruang lingkup kerja MySQL dan fungsinya
Untuk dapat mengakses MySQL melalui web, bisa digunakan PhpMyAdmin yang diakses dari
browser.
Format Perintah
Berikut adalah ketentuan-ketentuan memberi perintah pada MySQL:
1. Setiap perintah harus diakhiri dengan tanda titik koma, kecuali untuk perintah tertentu,
misal :quit
Untuk keluar dari program MySQL menggunakan perintah (\q), quit dan exit.
6 Buku Praktikum : Basis Data Dasar
Output:
Describe
nama_tabel;
desc nama_tabel;
Mendefinisikan Null /Not Null
Perintah yang digunakan:
CREATE TABLE nama_tabel (Field1 TipeData1 (length1) NOT NULL, Field2
TipeData2(length2));
Cara 2: Jika primary key dibuat melalui create table, maka cara menghapusnya
menggunakan perintah:
ALTER TABLE nama_tabel DROP PRIMARY KEY;
9. Untuk menambahkan kolom “Terjual” dengan type data varchar (5) pada tabel barang, gunakan perintah:
MariaDB[(perdagangan)] > alter table barang add terjual varchar(5);
10. Untuk mengubah tipe data untuk kolom kode_barang menjadi varchar(10), gunakan perintah:
MariaDB[(perdagangan)] > alter table barang modify column kode_barang varchar(10);
11. Untuk mengubah nama kolom “terjual” menjadi “keterangan”, gunakan perintah:
MariaDB[(perdagangan)] > alter table barang change column terjual keterangan varchar(20);
12. Untuk menghapus kolom “keterangan” pada tabel barang, gunakan perintah:
MariaDB[(perdagangan)] > alter table barang drop keterangan;
Output:
LATIHAN
1. Buat sebuah database dengan nama fasilkom!
2. Buat sebuah tabel dengan nama “mahasiswa” di dalam database fasilkom!
5. Sisipkan sebuah kolom dengan nama phone (varchar 15) setelah kolom alamat!
6. Ubah kolom nim menjadi char (11)!
7. Ubah nama kolom phone menjadi telepon (varchar 20)!
8. Hapus kolom keterangan dari tabel!
9. Ganti nama tabel menjadi student!
10. Jadikan nim sebagai primary key!
Cara 2: Menambah baris dengan hanya mengisi data pada kolom tertentu:
INSERT INTO nama_tabel (kolom1, kolom2, kolom-n) VALUES (nilai1, nilai2, nilai-
n);
Apabila data yang dimasukkan pada kolom dengan tipe data karakter (Varchar) maka gunakan
Sistem Informasi – UNUGIRI 2021
tanda petik seperti “Pena”. Akan tetapi apabila data yang dimasukkan pada kolom dengan tipe
data integer maka tidak perlu menggunakan tanda petik seperti 10.
Cara 3: Menampilkan data dengan kondisi data tertentu dengan klausa where
14 Buku Praktikum : Basis Data Dasar
B1 Hardisk Buah 12
B2 Mp3 Player Unit 30
Untuk menambahkan data pada tabel tersebut ke tabel barang maka gunakan perintah seperti berikut ini:
MariaDB [perdagangan]> insert into barang value ('B1','Hardisk','buah',12), ('B2','Mp3 Player','unit',3);
2. Untuk menambahkan data pada tabel berikut ini ke tabel barang maka gunakan perintah seperti berikut
ini:
Kode_barang Nama_barang Satuan_barang Stok_barang
B3 Flashdisk 3
MariaDB [perdagangan]> insert into barang (kode_barang, nama_barang, stok_barang) values
("B3","Flashdisk",3);
3. Untuk melihat isi tabel barang, maka gunakan perintah
MariaDB [perdagangan]> select * from barang;
4. Jika anda hanya ingin menampilkan field kode_barang dan nama_barang saja, maka dapat digunakan
perintah seperti berikut ini:
MariaDB [perdagangan]> select kode_barang, nama_barang from barang;
5. Untuk menampilkan data dengan kondisi tertentu, maka gunakan perintah berikut ini:
MariaDB [perdagangan]> select kode_barang, nama_barang from barang where kode_barang="B1";
6. Untuk mengubah nama_barang pada tabel barang, misalkan dilakukan update data pada tabel barang pada
kode_barang=B2 diubah nama_barang nya menjadi “Netbook”, maka gunakan perintah berikut ini:
MariaDB [perdagangan]> update barang set nama_barang="Netbook" where kode_barang="B2";
7. Untuk menghapus data dengan kode_barang=”B3”, maka gunakan perintah berikut ini:
MariaDB [perdagangan]> delete from barang where kode_barang="B3";
8. Untuk menghapus tabel barang, maka gunakan perintah berikut ini:
MariaDB [perdagangan]> drop table barang;
9. Untuk menghapus database perdagangan, maka gunakan perintah:
MariaDB [perdagangan]> drop database perdagangan;
Output:
Sistem Informasi – UNUGIRI 2021
LATIHAN
1. Buat sebuah database dengan nama pet_shop
2. Buat sebuah tabel dengan nama pet di dalam database pet_shop
3. Tambahkan kolom id_pet int, not null, primary key, auto increment (sebagai kolom pertama)!
4. Isi data ke dalam tabel pet seperti berikut:
10. Tampilkan semua hewan dengan spesis anjing dan anjing tersebut berjenis kelamin betina!
11. Dengan satu perintah select, tampilkan semua hewan dengan spesis ular atau spesis burung (dalam satu tabel
ada hewan spesies ular dan burung saja)!
12. Dengan satu perintah select, tampilkan semua hewan yang berspesis kucing dengan kelamin laki-laki atau
hewan yang berspesis anjing dengan kelamin betina (tampilkan dalam satu tabel)!
nama_tabel nama_alias_tabel;
IN
IN digunakan untuk melakukan pengecekan apakah suatu nilai terdapat dalam suatu himpunan
Syntax:
SELECT * FROM nama_tabel1 WHERE nama_kolom IN (SELECT nama_kolom
FROM nama_tabel2);
NOT IN
Selain perintah IN terdapat juga perintah NOT IN. Perintah NOT IN ini digunakan untuk
melakukan pengecekan apakah suatu nilai tidak terdapat dalam suatu himpunan
Syntax:
Syntax:
NOT EXISTS
NOT EXIST ini setara dengan NOT IN. Jadi NOT EXIST ini digunakaan untuk menampilkan
data pada table tertentu dimana data pada kolom jenis nya tidak tercantum pada tabel tersebut
Syntax:
Jika subquery S menghasilkan G1, G2, ..., Gn, maka kondisi di atas identik dengan:
(gaji > G1) OR (gaji > G2) OR ... OR (gaji > Gn)
ANY dipakai dalam subquery bila hasil yang dikembalikan lebih dari satu Jika nilai ANY,
diabaikan dan subquery menghasilkan lebih dari satu nilai, maka pesan kesalahan akan muncul.
Sistem Informasi – UNUGIRI 2021
Syntak:
SELECT ... > ANY (SELECT ...);
ALL
Operator ALL digunakan untuk melakukan perbandingan dengan subquery. Kondisi dengan
ALL menghasilkan nilai TRUE (benar) jika subquery tidak menghasilkan apapun atau jika
perbandingan menghasilkan TRUE untuk setiap nilai query terhadap hasil subquery.
Syntak:
SELECT ... >= ALL (SELECT ...);
Sintak ORDER BY
Klausa ORDER BY digunakan untuk mengurutkan data berdasarkan kolom tertentu sesuai
dengan tipe data yang dimiliki.
20 Buku Praktikum : Basis Data Dasar
Sintak DISTINCT
Distinct adalah kata kunci ini untuk menghilangan duplikasi.
SELECT DISTINCT nama_field FROM nama_tabel;
EXCEPT
EXCEPT / Set Difference merupakan operator yang digunakan untuk memperoleh data dari dua
buah query dimana data yang ditampilkan adalah data yang ada pada hasil query 1 dan tidak
Buku Praktikum : Basis Data Dasar 21
terdapat pada data dari hasil query 2 dengan ketentuan jumlah, nama dan tipe kolom dari masing-
masing tabel yang akan ditampilkan datanya harus sama.
B1 Hardisk Buah 12
B2 Mp3 Player Unit 30
B3 DVD Player Unit 50
B4 Flashdisk Buah 12
B5 Mouse Buah 34
1. Untuk menampilkan kolom kode_barang dari tabel barang dengan menggunakan alias nama kolom yaitu
KODE, maka gunakan perintah seperti berikut ini:
MariaDB [penjualan]> select kode_barang as kode from barang;
2. Untuk menampilkan kolom kode_barang dan nama_barang dari tabel barang dengan menggunakan alias nama
tabel yaitu brg, maka gunakan perintah seperti berikut ini:
MariaDB [penjualan]> select brg.kode_barang, brg.nama_barang from barang brg;
3. Tambahkan tabel di database perdagangan dengan nama: customer, dengan ketentuan:
Field Type Null Key
Kode_customer Varchar (6) No Pri
Nama_customer Varchar (30) No
Alamat_custome Varchar Yes
r (100)
Isi Tabel Customer:
Kode_customer Nama_customer Alamat_customer
22 Buku Praktikum : Basis Data Dasar
C1 Andi Palembang
C2 Budi Indralaya
4. Untuk menampilkan data dari dua tabel (barang, customer), maka gunakan perintah
MariaDB [penjualan]> select * from barang, customer;
5. Tambahkan tabel di database perdagangan dengan nama: penjualan, dengan ketentuan:
Field Type Nul Key
l
Kode_penjuala Varchar (6) No Pri
n
Kode_barang Varchar (6) No
Bulan_terjual Varchar (50) No
Jumlah_terjual Int(6) No
Isi Tabel penjualan:
Kode_penjualan Kode_barang Bulan_terjual Jumlah Terjual
P1 B2 Januari 4
P2 B4 Februrari 2
6. Untuk menampilkan data pada tabel barang yang dimana data pada kolom_barang tercantum pada tabel
penjulan dengan menggunakan sintaks IN, maka dapat digunakan perintah berikut ini:
MariaDB [penjualan]> select * from barang where kode_barang in (select kode_barang from penjualan);
7. Untuk menampilkan data pada tabel barang yang dimana data pada kolom_barang TIDAK tercantum pada
tabel penjulan dengan menggunakan sintaks NOT IN, maka dapat digunakan perintah berikut ini:
MariaDB [penjualan]> select * from barang where kode_barang not in (select kode_barang from penjualan);
8. Untuk menampilkan data pada tabel barang yang dimana data pada kolom_barang tercantum pada tabel
penjulan dengan menggunakan sintaks EXIST, maka dapat digunakan perintah berikut ini:
MariaDB [penjualan]> select * from barang where exists (select * from penjualan where barang.kode_barang
= penjualan.kode_barang);
9. Untuk menampilkan data pada tabel barang yang dimana data pada kolom_barang TIDAK tercantum pada
tabel penjulan dengan menggunakan sintaks NOT EXIST, maka dapat digunakan perintah berikut ini:
MariaDB [penjualan]> select * from barang where not exists (select * from penjualan where
Output:
LATIHAN
1. Gunakan database fasilkom yang telah dibuat pada LKP 2. Buatlah tabel pegawai dalam database fasilkom
sebagai berikut:
Fungsi Agregat
I. Tujuan:
Setelah mengerjakan LKP 5 ini, anda diharapkan dapat:
1. Menggunakan perintah select untuk retrive data dan mampu mengguankan fungsi agregat
4. Untuk menghitung jumlah harga_barang pada tabel barang, maka gunakan perintah seperti berikut ini:
MariaDB [penjualan]> select sum(harga_barang) from barang;
5. Untuk menghitung rata_rata harga_barang pada tabel barang, maka gunakan perintah seperti berikut ini:
MariaDB [penjualan]> select avg(harga_barang) from barang;
6. Untuk menampilkan stok_barang terkecil dari tabel barang, maka gunakan perintah seperti berikut ini:
MariaDB [penjualan]> select min(stok_barang) from barang;
7. Untuk menampilkan stok_barang terbanyak dari tabel barang, maka gunakan perintah seperti berikut ini:
MariaDB [penjualan]> select max(stok_barang) from barang;
Output:
LATIHAN:
1. Gunakan tabel pegawai (pada LKP 4), tampilkan pegawai yang gajinya 2.000.000,1.250.000 dan 1.500.000
dalam satu perintah select
2. Tampilkan pegawai yang gajinya bukan 2.000.000 dan 1.250.000
3. Tampilkan pegawai yang tunjangannya NULL
4. Tampilkan pegawai yang tunjangannya tidak NULL
5. Tampilkan/hitung jumlah baris/record tabel pegawai
6. Tampilkan/hitung jumlah total gaji di tabel pegawai
7. Tampilkan/hitung rata-rata gaji pegawai
26 Buku Praktikum : Basis Data Dasar
LATIHAN:
1. Gunakan tabel pet (LKP3), Tampilkan jumlah hewan yang dimiliki setiap owner. Tampilan setelah SQL
dijalankan:
5. Tampilkan jumlah hewan berdasarkan spesis (cat dan dog saja) dan jenis kelamin
Pattern Matching
I. Tujuan:
Setelah mengerjakan LKP 7 ini, anda diharapkan dapat:
1. Menampilkan data dengan pencocokkan pola/karakter
LIKE ‘%Glasgow%’ artinya mencari data pada kolom tertentu yang mengandung karakter
Sistem Informasi – UNUGIRI 2021
1. Untuk menampilkan data yang memiliki nama barang seperti “Player”, maka dapat digunakan perintah:
MariaDB [penjualan]> select * from barang where nama_barang like"%player";
2. Untuk menampilkan data yang memiliki nama barang seperti “di”, maka dapat digunakan perintah:
MariaDB [penjualan]> select * from barang where nama_barang like"%di%";
3. Untuk menampilkan data yang memiliki nama barang TIDAK seperti “di”, maka dapat digunakan perintah:
MariaDB [penjualan]> select * from barang where nama_barang not like"%di%";
4. Untuk menampilkan data yang memiliki nama barang jumlah huruf adalah 5, maka dapat digunakan perintah:
MariaDB [penjualan]> select * from barang where nama_barang like"_____";
Output:
LATIHAN:
1. Buatlah sebuah database perdagangan lalu buatlah tabel barang didalam database tersebut:
Relasi Tabel
I. Tujuan:
Setelah mengerjakan LKP 8 ini, anda diharapkan dapat:
1. Membuat relasi tabel dan membuktikan integrasi data dengan tabel yang ter-relasi.
References menunjukkan bahwa foreign key disuatu tabel merupakan key pada tabel lain.
Pada perubahan suatu record baik itu update atau delete, dapat diikuti dengan kata: cascade,
restrict atau set null. Kita bisa atur sesuai kebutuhan.
Contoh:
- On update CASCADE on delete RESTRICT
- On update RESTRICT on delete SET NULL
LATIHAN:
1. Buat database dengan nama toko. Buat 3 buah tabel di dalam database tersebut yaitu tabel produk,
pelanggan, produk_order.
Tabel Produk:
Tabel Pelanggan:
Tabel Produk_order:
Buat relasi untuk tabel-tabel di atas dan buktikan relasi tersebut dengan melakukan update atau delete terhadap
suatu tabel berpengaruh terhadap tabel lainnya!
Buku Praktikum : Basis Data Dasar 35
Join
I. Tujuan:
Setelah mengerjakan LKP 9 ini, anda diharapkan dapat:
1. Mengenal dan mampu melakukan operasi join beberapa tabel.
Left Join
Left join digunakan untuk menampilkan semua data dari table sebelah kiri perintah left
join beserta pasangannya dari table sebelah kanan. Meskipun terdapat data dari sebelah kiri tidak
memiliki pasangan, tetap akan ditampilkan dengan pasangannya berupa nilai NULL.
Sintak:
SELECT * FROM nama_tabel1 LEFT JOIN nama_tabel2 ON (nama_tabel1.nama_field
= nama_tabel2.nama_field);
Right Join
Right join digunakan untuk menampilkan semua data dari tabel sebelah kanan perintah
right join beserta pasangannya dari tabel sebelah kiri. Meskipun terdapat data dari sebelah kanan
tidak memiliki pasangan, tetap akan ditampilkan dengan pasangannya berupa nilai NULL.
36 Buku Praktikum : Basis Data Dasar
Sintak:
SELECT * FROM nama_tabel1 RIGHT JOIN nama_tabel2 ON
(nama_tabel1.nama_field = nama_tabel2.nama_field);
Natural Join
Natural join digunakan untuk menampilkan semua data dari dua table dimana jika
terdapat kolom yang sama, maka yang akan ditampilkan hanya salah satunya saja, yaitu kolom
dari tabel sebelah kiri perintah natural join.
Sintak:
SELECT * FROM nama_tabel1 NATURAL JOIN nama_tabel2;
Sintak:
SELECT * FROM nama_tabel1 NATURAL RIGHT JOIN nama_tabel2;
Buku Praktikum : Basis Data Dasar 37
Output:
LATIHAN:
1. Buat sebuah database dengan nama sewa_mobil:
2. Buat tabel mobil dan isi datanya:
38 Buku Praktikum : Basis Data Dasar