Apa itu DCL?
DCL (Data Control Language) adalah salah satu bentuk SQL yang digunakan untuk melakukan suatu control pada data yang ada atau disimpan dalam suatu database. Control yang dimaksud disini adalah memberikan privileges atau hak akses kepada user yang akan mengakses data pada suatu database.
DCL memiliki 2 syntaks yang paling umum, yaitu:
A. GRANT; dan
B. REVOKE
A. GRANT
Perintah GRANT digunakan oleh administrator untuk menambah izin baru kepada pengguna database. Ini memiliki sintaks yang sangat sederhana, yang didefinisikan sebagai berikut:
GRANT [privilege] ON [object] TO [user] [WITH GRANT OPTION]
Berikut rundown pada masing-masing parameter yang ada di perintah GRANT ini:
1. Privilege
Privilege dapat berupa kata kunci ALL (untuk memberikan berbagai izin) atau izin database tertentu atau seperangkat perizinan. Contohnya meliputi CREATE DATABASE, SELECT, INSERT, UPDATE, DELETE, EXECUTE, dan CREATE VIEW.
2. Object
Obyek dapat berupa objek database. Pilihan privilege yang valid akan bervariasi berdasarkan jenis objek database Anda masukan dalam klausa on ini. Biasanya objek berupa database, fungsi, store procedural, tabel atau view.
3. Pengguna/User
Menjelaskan pengguna/user database yang akan diberikan privilege (hak istimewa) terhadap database.
Contohnya seperti berikut ini, kita akan memberi hak akses untuk user Semmy agar hanya bisa melakukan SELECT pada tabel SISWA di database sekolah:
GRANT SELECT ON sekolah.SISWA TO Semmy
B. REVOKE
Perintah REVOKE digunakan untuk menghapus akses database dari pengguna sebelumnya yang diberikan akses GRANT tersebut. Syntaksnya adalah:
REVOKE [GRANT OPTION FOR] [permission] ON [object] FROM [user] [CASCADE]
Berikut rundown yang ada pada parameter dari perintah REVOKE:
1. Permission
Menentukan hak akses database yang ingin di hapus dari pengguna yang telah diidentifikasi
2. Object
Obyek dapat berupa objek database. Pilihan privilege yang valid akan bervariasi berdasarkan jenis objek database Anda masukan dalam klausa on ini. Biasanya objek berupa database, fungsi, store procedural, tabel atau view.
3. User/Pengguna
Menjelaskan pengguna/user database yang akan diberikan privilege (hak istimewa) terhadap database.
4. CASCADE
Opsi CASCADE juga mencabut izin tertentu dari setiap pengguna bahwa pengguna tertentu diberikan izin.
Contohnya adalah jika kita melakukan revoke pada hak akses yang sebelumnya:
REVOKE SELECT ON sekolah.SISWA
FROM Semmy
Tidak ada komentar:
Posting Komentar