✨ PROMO SPESIAL 10.10
Belajar Data 6 BULAN bersertifikat  hanya 100K!
0 Hari 1 Jam 50 Menit 20 Detik

Belajar MySQL dengan Perintah Data Control Language

Belajar Data Science di Rumah 24-November-2022
https://dqlab.id/files/dqlab/cache/877c54efec9f778b7e217ced28149375_x_Thumbnail800.jpg

SQL memiliki banyak perintah yang dilakukan untuk melakukan pengaturan data dalam database. Salah satu perintah yang biasanya dipakai oleh database administrator dalam manajemen database pada SQL adalah Data Control Language. Berdasarkan definisinya, Data Control Language adalah satu diantara kelompok perintah yang digunakan untuk melakukan kontrol terhadap privilage atau hak akses khusus untuk berinteraksi dengan database. 


Perintah Data Control Language dalam SQL diperlukan sebagai prerequisites atau prasyarat bagi tiap pengguna database untuk melakukan berbagai aktivitas seperti membuat object, menghapus object, mengubah object, menampilkan hasil query dan lain-lain. Ada dua perintah yang dipakai untuk melakukan hak akses khusus dalam database dengan menggunakan Data Control Language. Adapun perintahnya yaitu GRANT dan REVOKE.


Setiap pengguna diberikan kesempatan untuk mengakses database sehingga perintah Data Control Language dipakai untuk melakukan aksi-aksi dalam database. Contoh pengguna A hanya diberikan akses untuk membuat dan menampilkan hasil querynya saja. Sedangkan lain halnya dengan pengguna B yang memiliki akses untuk menghapus object saja. Maka baik pengguna A dan pengguna B hanya dapat melakukan perintah sesuai dengan aktivitas masing-masing. Pengguna hanya dapat melakukan perintah tersebut. 


Misalnya pengguna A tidak bisa menghapus data apalagi mengubah data. Hal ini menjadi penting untuk diketahui oleh pemula data yang ingin belajar SQL karena di dunia kerja dengan banyak pengguna database, manajemen pembagian hak akses seperti ini sangat kursial dan berpengaruh terhadap keamanan data. Lalu, kira-kira bagaimana penerapan perintah Data Control Language dalam SQL? Yuk kita belajar bareng-bareng!


1. Perintah GRANT

Perintah GRANT dalam SQL adalah perintah yang dipakai untuk memberikan hak akses khusus pada objek database kepada pengguna. Untuk lebih jelasnya, berikut adalah sintaks dari perintah GRANT dalam SQL:


Setelah melihat sintaks diatas, berikut adalah keterangan dari masing-masing sintaks tersebut:

  • Privilege_name adalah hak akses atau privilage yang diberikan kepada pengguna untuk mengakses data dalam sebuah database. Beberapa hak aksesnya diwakili oleh perintah ALL, EXECUTE dan SELECT.

  • Object_name adalah nama objek database seperti TABLE, VIEW, STORED PROC dan SEQUENCE. Objek database bisa bermacam-macam tergantung jenis tabel yang ingin dibidik menggunakan perintah GRANT.

  • User_name adalah nama pengguna yang diberikan hak akses

  • Public digunakan untuk membuka hak akses kepada semua pengguna

  • Role_name adalah seperangkat hak akses yang dikelompokkan bersama

  • WITH GRANT OPTION merupakan sintaks yang memungkinkan pengguna untuk memberikan hak akses kepada pengguna lain.


Baca juga : Saatnya Belajar SQL, Kenali Rekomendasi Query SQL Bagi Pemula


2. Contoh Penerapan Perintah GRANT

Misalnya saya punya sintaks seperti ini dalam SQL


Sintaks diatas memberikan izin akses berupa perintah SELECT pada tabel Employee kepada user1. Disini kamu perlu hati-hati menggunakan opsi WITH GRANT. Kenapa? Kalau misalnya GRANT SELECT pada tabel Employee kepada user1 menggunakan opsi perintah WITH GRANT maka nantinya user1 mendapatkan GRANT SELECT pada tabel Employee ke user yang lainnya. Misalnya user2, user3 dan seterusnya. Kalaupun memang kamu akan melakukan REVOKE dalam database tersebut, hak SELECT pada tabel Employee yang aksesnya dimiliki oleh user1 juga akan dimiliki oleh user2 dengan hak dan tabel akses yang sama.


3. Tipe Privilege dalam Perintah GRANT

Masih ingat tidak sahabat DQLab? Diatas tadi ada privilage_name yang ada didalam perintah GRANT. Nah, dalam Data Control Language pada perintah GRANT khususnya punya banyak tipe priviligenya loh. Mau tahu apa saja? Berikut adalah beberapa contoh tipe privilege yang ada didalam perintah GRANT SQL.

ALL PRIVILEGE 

Memberikan seluruh akses secara penuh (full access).

CREATE

Memberikan hak akses untuk membuat database atau objek database

DROP

Memberikan hak akses untuk menghapus database atau objek database

SELECT

Memberikan hak akses untuk melakukan query ke database

INSERT

Memberikan hak akses untuk menambahkan record/data baru ke tabel

UPDATE 

Memberikan hak akses untuk mengubah record/data di tabel

DELETE 

Memberikan hak akses untuk menghapus record/data di tabel.


Baca juga : Catat! Ini 3 Keuntungan Belajar SQL dalam Mengolah Data


4. Perintah REVOKE

Selain perintah GRANT, dalam Data Control Language juga ada perintah REVOKE SQL. Perintah REVOKE dipakai untuk menghapus hak akses pengguna ke dalam objek database. Berikut adalah sintaks dari perintah REVOKE:


Setelah melihat sintaks diatas, berikut adalah keterangan dari masing-masing sintaks tersebut:

  • Privilege_name adalah hak akses atau privilage yang diberikan kepada pengguna data dalam sebuah database. Beberapa hak aksesnya diwakili oleh perintah ALL, EXECUTE dan SELECT.

  • Object_name adalah nama objek database seperti TABLE, VIEW, STORED PROC dan SEQUENCE. Objek database bisa bermacam-macam tergantung jenis tabel yang ingin dibidik menggunakan perintah REVOKE. Jadi diisi dengan objek-objek database

  • User_name adalah nama pengguna database yang diberikan hak akses

  • Public digunakan untuk membuka hak akses kepada semua pengguna

  • Role_name adalah seperangkat hak akses yang dikelompokkan bersama


5. Contoh Penerapan Perintah REVOKE

Misalnya saya punya sintaks seperti ini dalam SQL


Perintah diatas akan menghapus akses SELECT pada tabel employee dari user1. Ketika kamu mengetikan perintah REVOKE pada tabel dari pengguna, pengguna tidak akan mendapatkan akses SELECT data dari tabel itu lagi. Tetapi, jika pengguna telah menerima keuntungan berupa SELECT pada tabel tersebut lebih dari satu pengguna. Maka dia bisa memilih dari tabel tersebut hingga semua orang memberikan izin untuk mencabut akses dari kepemilikan data tersebut. 


Nikmati trilogi modul Fundamental SQL menarik lainnya bersama DQLab. Tidak perlu khawatir, kamu tetap bisa belajar ngoding meskipun belum familiar dengan bahasa pemrograman sekalipun. Belajar SQL adalah langkah yang tepat untuk membangun pembiasaan kamu untuk ngoding dan semakin memperkaya skill data science kamu. Yuk, Sign up sekarang untuk #MulaiBelajarData di DQLab!


Mulai bangun portfolio datamu yang outstanding dengan Data Analyst Career Track bersama DQLab dan nikmati modul-modul dari dasar hingga tingkat mahir. Caranya dengan Sign Up sekarang untuk #MulaiBelajarData di DQLab:

  • Buat Akun Gratis dengan Signup di DQLab.id/signup

  • Selesaikan modulenya, dapatkan sertifikat & reward menarik dari DQLab

  • Subscribe DQLab.id untuk Akses Semua Module Premium


Penulis: Reyvan Maulid


Mulai Karier
sebagai Praktisi
Data Bersama
DQLab

Daftar sekarang dan ambil langkah
pertamamu untuk mengenal
Data Science.

Buat Akun


Atau

Sudah punya akun? Login