MODUL ASISDATAmodul.smkn4malang.sch.id/.../03/MODUL-10-TCL-dan-DCL.pdf · 2020. 3. 18. · 4.17...
Transcript of MODUL ASISDATAmodul.smkn4malang.sch.id/.../03/MODUL-10-TCL-dan-DCL.pdf · 2020. 3. 18. · 4.17...
-
MODUL BASISDATA #10
TCL dan DCL
Mohammad Mahmudi, S.Kom., M.Pd SMKN 4 Malang Jl. Tanimbar No. 22 Kota Malang
Telp. 0341-353798
-
MODUL 10
TCL DAN DCL
Daftar Isi
A. Pendahuluan _____________________________________________________________ 1
B. Pembelajaran ____________________________________________________________ 3
C. Evaluasi _______________________________________________________________ 10
D. Kunci Jawaban __________________________________________________________ 12
E. Daftar Pustaka __________________________________________________________ 21
F. Penutup ________________________________________________________________ 21
Company Information _______________________________________________________ 22
-
MODUL 10
TCL DAN DCL
Page 1
A. Pendahuluan
TCL (Transaction Control Language) adalah pernyataan yang digunakan untuk mengelola
perubahan yang dilakukan oleh pernyataan DML, yang termasuk dalam perintah TCL adalah
COMMIT, SAVEPOINT, ROLLBACK, SET TRANSAKSI.
DCL (Data Control Language) merupakan sub bahasa SQL yang digunakan untuk melakukan
pengontrolan data dan server databasenya. Perintah DCL dintaranya adalah GRANT dan
REVOKE.
1. STANDART KOMPTENESI
3.16 Menerapkan pengendalian server melalui koneksi client-server pada RDBMS
4.16 Membuat koneksi pengendalian server melalui client-server pada RDBMS
3.17 Mengevaluasi pengamanan sistem basis data pada RDBMS
4.17 Merevisi sistem pengamanan basis data pada RDBMS
3.18 Menerapkan replikasi basis data
4.18 Membuat replikasi basis data
2. DESKRIPSI
Modul ini merupakan modul pembelajaran mata pelajaran Basis Data untuk siswa SMK kelas
XI semester 3. Modul pembelajaran ini dibuat dalam rangka untuk mempermudah proses
pembelajaran. Modul ini berisi materi TCL dan DCL.
3. WAKTU
Alokasi pembelajaran untuk modul 10 DCL dan TCL ini dapat digunakan dalam waktu
pembelajaran selama satu kali tatap muka.
-
MODUL 10
TCL DAN DCL
Page 2
4. PETUNJUK PENGGUNAAN MODUL
Sebelum Pembelajaran
1. Sebelum masuk pada materi, disajikan pendahuluan sebagai pengantar menuju materi
utama.
2. Disajikan kompetensi dasar dan alokasi waktu sebagai pedoman bagi pengguna modul
untuk mencapai tujuan pembelajaran.
Selama Pembelajaran
1. Mempelajari dan memahami materi pada modul.
2. Mempelajari dan mencatat materi yang dianggap penting.
3. Mengerjakan tugas yang terdapat pada bagian evaluasi.
4. Mengerjakan tes untuk mengukur kemampuan dalam memahami modul.
Setelah Pembelajaran
1. Mengevaluasi jawaban dengan kunci jawaban.
2. Mengetahui hasil evaluasi (sudah memenuhi kriteria ketuntasan atau belum).
3. Memutuskan untuk meneruskan belajar pada materi selanjutnya atau tetap pada materi
yang sama.
-
MODUL 10
TCL DAN DCL
Page 3
B. Pembelajaran
1. DCL (Data Control Language)
REVOKE -> Untuk menghapus hak akses
GRANT -> memberikan hak akses
menambahkan user baru
CREATE USER 'nama_user';
create user 'rplb'@'localhost' identified by 'kelaskece';
untuk menampilkan user
select * from mysql.user;
meng update user
update mysql.user set password='isi_password' where user='nama_user';
seorang user bisa CRUD di sebuah database
GRANT hak_akses ON nama_db.nama_table TO 'nama_user'@'lokasi_user'
IDENTIFIED BY 'password';
menghapus user
DROP USER 'nama_user'@'localhost / 127.0.0.1';
DROP USER 'nama_user'@'%';
-
MODUL 10
TCL DAN DCL
Page 4
REVOKE-> berfungsi menghapus hak akses
contoh:
REVOKE hak_akses ON dbperpustakaan.* FROM 'nama_user'@'localhost';
Backup database
akses harus ke root
mysqldump -u root nama_database >nama_file.sql
contoh:
mysqldump -u root dbperpustakaan >backup.sql
Restore database
mysql -u root dbperpustakaan memproses sintak untuk memindahkan transaksi dari memori pemroses ke
database secara permanen
ROLLBACK -> membatalkan transaksi yang belum di COMMIT
contoh:
harus diketikkan dulu perintah
Start transaction;
kemudian masukkan data dan baru kemudian bisa di rollback;
-
MODUL 10
TCL DAN DCL
Page 5
LATIHAN
1. Lakukan login ke mysql melalui Command Lane menggunakan user root!
2. Gantikan password untuk root menjadi ‘123’!.
3. Lakukan pengecekan pengujian untuk membuktikan password baru sudah dapat digunakan
untuk login pada user root!.
-
MODUL 10
TCL DAN DCL
Page 6
4. Buatlah sebuah user baru dengan password nya!.
5. Buatlah skenario ijin akses untuk user baru pada database toko!.
Dibuat hak akses dengan nama ‘kasir1’ dan password ‘kasir1’
User tersebut hanya bisa melihat tabel data barang saja
6. Lakukan skenario yang sudah dibuat!.
MEBUAT DATABASE BACKUP DAN RESTORE
-
MODUL 10
TCL DAN DCL
Page 7
1. Lakukan backup database menggunakan CLI pada sisi server!.
2. Beri dokumentasi backup database menggunakan penamaan file sesuia standart perusahaan!.
3. Lakukan Restore data kedalam database baru pada sisi server!.
-
MODUL 10
TCL DAN DCL
Page 8
4. Lakukan transaksi dan gunakan commit pada database yang baru saja direstore!.
5. Lakukan backup database pada sisi client secara online!.
-
MODUL 10
TCL DAN DCL
Page 9
-
MODUL 10
TCL DAN DCL
Page 10
C. Evaluasi
TUGAS
Buatlah database dengan nama Toko_Komputer dengan Relasi tabel nya sbb:
1. Tuliskan Script untuk membuat database toko_komputer
2. Tuliskan sintak SQL untuk membuat Tabel Barang
3. Buat INDEX pada table penjualan
4. Menambah data pada tabel barang
5. Query untuk menampilkan data penjulan berupa data nama barang dan jumlah terjual
dikelompokkan
6. Buat View untuk soal nomor 5
-
MODUL 10
TCL DAN DCL
Page 11
7. Buatlah Script untuk merubah data pada table barang
8. Buatlah Script untuk menghapus data pada table barang
9. Membuat procedure untuk mencari data barang berdarkan kode barang, dan cara penggunaan
procedure tersebut
10. Buatlah Faction untuk menghitung luas segtiga, dan cara penggunaan function tsb?
11. Buat trigger untuk meng update stok data barang ketika transaksi penjualan, dan cara
mengecek jalannya trigger.
12. penerapan transaction (Commit) untuk table penjualan
13. penerapan transaction (Rollback) untuk table penjualan
-
MODUL 10
TCL DAN DCL
Page 12
D. Kunci Jawaban
No
Soal
Jawaban Skor
1.
CREATE DATABASE toko_komputer;
USE toko_komputer;
5
2.
CREATE TABLE barang (kode_barang VARCHAR(10) PRIMARY
KEY, nama_barang VARCHAR(50), harga INT, jumlah INT,
kode_supplier VARCHAR(10));
5
3.
ALTER TABLE penjualan ADD INDEX(kode_barang, kode_pelanggan,
kode_kasir);
5
4. INSERT INTO `barang` (`kode_barang`, `nama_barang`, `harga`,
`jumlah`, `kode_supplier`) VALUES ('BRG001', 'Sabun Mandi Merk
LUX', '3500', '24', 'SP001')
5
5. SELECT barang.nama_barang,penjualan.jumlah FROM
penjualan,barang WHERE penjualan.kode_barang='BRG001' ORDER
BY `tanggal`;
Hasilnya:
5
-
MODUL 10
TCL DAN DCL
Page 13
6. CREATE VIEW tampil_jumlah_brg AS
SELECT barang.nama_barang,penjualan.jumlah FROM
penjualan,barang WHERE penjualan.kode_barang='BRG001' ORDER
BY `tanggal`;
5
-
MODUL 10
TCL DAN DCL
Page 14
7,
5
8. DELETE FROM barang WHERE kode_barang=’BRG005’;
5
9. Dengan GUI sbb
10
-
MODUL 10
TCL DAN DCL
Page 15
Dengan CLI dan Cara mengeksekusinnya:
DELIMITER //
CREATE PROCEDURE cari_barang_kode(IN KeyKode
VARCHAR(10))
BEGIN
SELECT * FROM nama WHERE
kode_barang=’KeyKode’;
END //
DELIMITER ;
CALL cari_barang_kode(‘BRG001’);
-
MODUL 10
TCL DAN DCL
Page 16
10.
DELIMITER //
CREATE FUNCTION luas (a FLOAT,t FLOAT) RETURNS FLOAT
BEGIN
DECLARE luas FLOAT;
SET luas=0.5*a*t;
RETURN luas;
END //
SELECT luas(7,8) AS luas_segitiga;
20
11.
Data awal: 10
-
MODUL 10
TCL DAN DCL
Page 17
Dibuat Trigger Update Stok:
DELIMITER //
CREATE TRIGGER update_stok_barang AFTER INSERT ON
penjualan
FOR EACH ROW
BEGIN
UPDATE barang SET jumlah = jumlah - NEW.jumlah WHERE
kode_Barang = NEW.kode_barang;
END //
DELIMITER ;
-
MODUL 10
TCL DAN DCL
Page 18
Diinputkan data di table penjulan:
INSERT INTO penjualan VALUES
(‘PJ004’,’BRG004’,’P001’,’K001’,’2017-09-06’,’10’);
Data di table barang jumlahnya otomatis berkurang
12. START TRANSACTION;
INSERT INTO penjualan VALUES
(‘PJ004’,’BRG004’,’P001’,’K001’,’2017-09-06’,’10’);
SELECT * FROM TABLE barang;
COMMIT;
10
-
MODUL 10
TCL DAN DCL
Page 19
13. START TRANSACTION;
INSERT INTO penjualan VALUES
(‘PJ004’,’BRG004’,’P001’,’K001’,’2017-09-06’,’10’);
SELECT * FROM TABLE barang;
COMMIT;
10
-
MODUL 10
TCL DAN DCL
Page 20
Jumlah Skor 100
Skor maksimal = 100
Penskoran
𝑁𝑖𝑙𝑎𝑖 =𝑠𝑘𝑜𝑟 𝑝𝑒𝑟𝑜𝑙𝑒ℎ𝑎𝑛
𝑠𝑘𝑜𝑟 𝑚𝑎𝑘𝑠𝑖𝑚𝑎𝑙× 100
-
MODUL 10
TCL DAN DCL
Page 21
E. Daftar Pustaka
Buku
Madcoms. 2018. PHP & MySQL. Madiun: Madcoms.
Aunur Rofiq. 2008. Rekayasa Perangkat Lunak Jilid 3. Jakarta: Departemen Pendidikan
Nasional.
Jurusan Teknik Elektro Fakultas Teknik Universitas Negeri Malang (UM). 2015. Modul
Praktikum Basis Data.. Malang: Universitas Negeri Malang.
Internet
Achmad. Fahmi. 2013. ERD (Entitiy Relationship Diagram). Online.
(http://fahmiachmad96.blogspot.com/2013/09/erd-entity-relationship-diagram.html),
diakses 27 Agustus 2018.
Dany Septian. Ferdinan. 2013. Basis data materi #3. Online.
(http://fseptian.mhs.uksw.edu/2013/02/basis-data-materi-3.html), diakses 26 Agustus
2018.
Darmawan. 2018. Normalisasi database beserta pengertian dan contohnya. Online.
darmawan.blogspot.com, diakses 28 Agustus 2018.
Irine. Herlinna.2014. Entitiy Relationship Diagram (ERD) dan Contoh Kasus. Online.
(http://herlinnairine.wordpress.com/2014/02/06/entity-relationship-diagram-erd-dan-
contoh-kasus/), diakses 26 Agustus 2018.
Rudiawan. 2018. Normalisasi database beserta pengertian dan contohnya. Online.
https://rudiawan16.wordpress.com/normalisasi-database-beserta-pengertian-dan-
contohnya. diakses 28 Agustus 2018.
Winahyu. Rheza. 2013. Komponen Sistem Basis Data dan Abstraksi Data. Online. (http://the-
simple-blogs.blogspot.com/2013/02/komponen-sistem-basis-data-dan.html), diakses 27
Agustus 2018.
http://fahmiachmad96.blogspot.com/2013/09/erd-entity-relationship-diagram.htmlhttp://fseptian.mhs.uksw.edu/2013/02/basis-data-materi-3.htmlhttp://herlinnairine.wordpress.com/2014/02/06/entity-relationship-diagram-erd-dan-contoh-kasus/http://herlinnairine.wordpress.com/2014/02/06/entity-relationship-diagram-erd-dan-contoh-kasus/https://rudiawan16.wordpress.com/normalisasi-database-beserta-pengertian-dan-contohnyahttps://rudiawan16.wordpress.com/normalisasi-database-beserta-pengertian-dan-contohnyahttp://the-simple-blogs.blogspot.com/2013/02/komponen-sistem-basis-data-dan.htmlhttp://the-simple-blogs.blogspot.com/2013/02/komponen-sistem-basis-data-dan.html
-
MODUL 10
TCL DAN DCL
Page 22
F. Penutup
Melalui pembelajaran dengan modul ini, diharapkan pengguna modul dapat belajar secara
mandiri, mengukur kemampuan diri sendiri, dan menilai diri sendiri. Terutama dalam
memahami materi View. Semoga modul ini dapat digunakan sebagai referensi dalam
pembelajaran dan memberikan manfaat bagi pengguna.
M. MAHMUDI, S.KOM., M.PD
SMKN 4 MALANG
Tel 085790990660
Email [email protected]
Company Information
SMKN 4 Malang Jl. Tanimbar No. 22 Kota Malang
Tel 0341-353798
Email [email protected]