Tujuan Praktikum
- Mahasiswa memahami dan mengaplikasikan DML, DCL, dan TCL.
- Mahasiswa mampu memanipulasi data di dalam database sekurang-kurangnya proses
CRUD di dalam database.
- Mahasiswa mampu mengatur hak akses terhadap database
- Mahasiswa mampu mengantisipasi kesalahan-kesalahan yang terjadi pada saat
memanipulasi isi dari database.
Materi Praktikum
1. DML (Data Manipulation Language)
DML adalah kumpulan perintah SQL yang berfungsi untuk memanipulasi data di dalam
tabel di database, seperti SELECT, INSERT, UPDATE, DELETE, dan perintah-perintah
lain seperti CALL, DO, HANDLER, LOAD DATA INFILE, REPLACE, TRUNCATE,
dan EXPLAIN.
a. INSERT
INSERT digunakan untuk menambahkan data pada tabel dengan format penulisan
sebagai berikut : INSERT INTO nama_tabel (kolom-1, kolom-2, kolom-n)
Untuk mempercepat insert data, multiple insert dapat dilakukan dengan cara
menambahkan data yang akan dimasukkan selanjutnya dengan memisahkannya
menggunakan tanda koma (,), dengan format penulisan sebagai berikut :
Berikut contoh penggunaan INSERT pada database praktikum dengan kolom id (PK),
nama, dan kelas.
c. DELETE
Perintah DELETE digunakan untuk menghapus data yang ada dalam tabel. Cara
penulisan perintah DELETE adalah DELETE FROM nama_tabel WHERE kondisi;
2. Menampilkan data pada kolom tertentu, SELECT kolom-1, kolom-2, kolom-n FROM
nama_tabel;
seluruh data mahasiswa dengan (value pada kolom) nama yang tidak
mengandung kata “Ful”. Perintah NOT LIKE juga dapat digunakan seperti
LIKE
3. Perintah AND dan OR, berfungsi sebagai penghubung dua kondisi yang mana
AND mengharuskan seluruh kondisi terpenuhi, sedangkan OR mengharuskan
satu kondisi saja. Contohnya menampilkan seluruh data mahasiswa dengan ipk
kecil dari 2 dan semester 4, maka perintahnya adalah SELECT * FROM mahasiswa
WHERE ipk < 2 AND semester = 4;
Selain membuat user, DCL juga dapat menghapus user yang telah dibuat dengan
menggunakan perintah DROP USER 'uname'@'lokasi';
Note : tulisan berwarna hijau bersifat opsional, dapat digunakan ketika menghapus
user yang pada saat membuatnya disertai ip address.
Dalam DCL dijumpai dua perintah untuk membuat dan mencabut hak akses terhadap
database dari user tertentu.
GRANT : memungkinkan pengguna mengakses hak istimewa ke database
GRANT hak_akses [daftar_kolom][, hak_akses [daftar_kolom]] ON
nama_database.nama_tabel TO 'nama_user'@'lokasi_user';
hak_akses adalah privileges yang akan berikan kepada user tersebut. Hak akses
disini berisi query yang diperbolehkan, seperti: SELECT, INSERT, UPDATE,
DELETE, atau query lainnya. Jika kita ingin memberikan hak penuh untuk
semua query dasar tersebut, hak_akses ini bisa diisi dengan ALL.
daftar_kolom adalah daftar kolom yang akan diberi akses jika hanya akan
memberi akses terhadap kolom-kolom tertentu saja, bersifat opsional.
nama_database adalah nama database yang ingin diberikan hak akses. Jika kita
mengizinkan user tersebut dapat mengakses semua database yang ada,
nama_database bisa ditulis dengan tanda asterisk (*).
nama_tabel adalah nama tabel yang ingin diberikan hak akses. Jika kita
mengizinkan user dapat menggunakan semua tabel, nama_tabel bisa ditulis
dengan tanda asterisk (*).
nama_user adalah nama dari user yang akan diberikan hak akses.
Untuk melihat hak akses pada user yang telah diberikan hak akses dapat
menggunakan perintah SHOW GRANTS FOR ‘nama_user’@’lokasi_user’;
REVOKE : menghapus semua atau sebagian hak akses pengguna yang telah diberikan
dengan menggunakan perintah GRANT, penggunaannya pun sama dengan perintah
GRANT.
REVOKE hak_akses [daftar_kolom] ON nama_database.nama_tabel FROM
‘nama_user’@’lokasi_user’;
Instruksi
1. Masuk ke mysql melalui shell dari XAMPP maupun command prompt
2. Buat database ‘himpunan’
3. Buat tabel ‘anggota’ pada database ‘himpunan’
no_anggota : varchar (15) NOT NULL PK
nama : varchar (100)
status : int NOT NULL => 1 = AB, 2 = ALB
tahun_masuk : int
jalur_masuk : int NOT NUL => 1 = SNMPTN, 2 =SBMPTN, 3 = MANDIRI
4. Buat user baru yang hanya bisa diakses dari localhost *nama user terserah
5. Berikan akses melihat data semua kolom kecuali jalur_masuk kepada user baru yang telah
dibuat (Coba tes dengan memanipulasi datanya menggunakan user baru tersebut atau
menggunakan SHOW GRANT)
6. Pastikan berada di super admin kemudian START TRANSACTION
7. Isi tabel minimal 6 buah data terdiri dari (1) anda, (2) praktikan sebelah kiri, (3) praktikan
sebelah kanan, (4) praktikan belakang, (5) praktikan di depan, dan (6) salah satu asisten
pengawas praktikum PBD *variasikan data
8. SAVEPOINT pertama
Tugas
SELESAIKAN INSTRUKSI TERLEBIH DAHULU