In Bismillah Tugas

USER DCL (Data Control Language)

Didalam SQL (Structured Query Language) terdapat 3 perintah yaitu DDL, DML, dan DCL

Data Control Language (DCL) adalah salah satu dari kelompok perintah SQL yang digunakan untuk melakukan kontrol terhadap privilege atau hak akses khusus untuk berinteraksi dengan database. Hak akses khusus ini diperlukan sebagai prasyarat bagi setiap user database untuk melakukan berbagai aksi di database, seperti: membuat object, menghapus object, mengubah object, menampilkan hasil Query dan seterusnya.

USER

User adalah pengguna pada layanan atau perangkat dalam sistem teknologi informasi. Sebagai seorang administrator database, user ROOT mempunyai hak dalam membuat user dan memberikan hak-hak akses terhapad user baru tersebut. Adapun struktur dari Table User adalah sebagai berikut :

Menambahkan user
Insert Into user (host,user,password) Values (‘Localhost','kulo',password('nuwun')); 
Flush Privileges; 
Keterangan : 
Host : Localhost -> User hanya dapat mengakses MySQL hanya di komputer local / server saja. IP Address -> User hanya dapat mengakses MySQL di komputer dengan alamat IP yang telah didefinisikan. % -> User dapat mengakses MySQL dari komputer manapun. User -> Nama atau ID yang digunakan untuk Login. Password -> Digunakan untuk keamanan server database dan Password di enkripsi untuk keamanan user. Flush Privileges -> Wajib diberikan untuk menetapkan user dalam server dan digunakan selain pembuatan user baru juga dalam mengedit user maupun menghapus user dari server.

Hak Akses User
DCL merupakan kontrol keamanan terhadap database dan tabelnya., yaitu mengatur hak akses dan cara mencabut hak akses, agar tabeltabel tertentu hanya bisa diakses oleh orang-orang yang dikehendaki.
14 hak akses user :

GRANT
• Grant digunakan untuk mengizinkan seorang user mengakses tabel dalam database tertentu. Pemberian hak akses ini dengan clausa GRANT. 
• Perintah : 
         Grant hak_akses On Nama_Tabel To Nama_User 

Keterangan : 
Hak Akses adalah hak-hak yang diberikan server administrator kepada user, antara lain : ALTER, CREATE, DELETE, DROP, UPDATE, INSERT, FILE, PROCESS, RELOAD, REFERENCES,LOAD, SHUTDOWN DAN USAGE. Nama_Tabel adalah nama-nama tabel yang akan akan diakses atau pemberian hak kepada user. Pemakai adalah nama user yang akan diberi hak, dengan.
• Contoh : Diberikan semua hak akses semua tabel dalam database praktikum terhadap user kulo di localhost :
 > Grant all privileges On praktikum.* To kulo@localhost; 
 > Flush Privileges; 
• Diberikan hak akses insert dan select dalam database orderentry dengan tabel customers terhadap user kulo di localhost: 
 > Grant select,insert On orderentry.customers To kulo@localhost; 
 > Flush Privileges; 

REVOKE
• Revoke digunakan untuk Mencabut hak akses seorang user mengakses tabel dalam database tertentu. Pencabutan hak akses ini dengan clausa REVOKE. 
• Perintah : 
     Revoke hak_akses On Nama_Tabel From Nama_User 

Keterangan : 
Hak Akses adalah hak-hak yang diberikan server administrator kepada user, antara lain : ALTER, CREATE, DELETE, DROP, UPDATE, INSERT, FILE, PROCESS, RELOAD, REFERENCES,LOAD, SHUTDOWN DAN USAGE. Nama_Tabel adalah hak-hak yang diberikan server administrator kepada user, antara lain : ALTER, CREATE, DELETE, DROP, UPDATE, INSERT, FILE, PROCESS, RELOAD, REFERENCES,LOAD, SHUTDOWN DAN USAGE. Nama_Tabel adalah nama-nama tabel yang akan akan diakses atau pemberian hak kepada user. Pemakai adalah nama user yang akan diberi hak, dengan ketentuan nama pemakai diikuti nama dari host diawalai tanda @.
• Contoh : Dicabut semua hak akses semua tabel dalam database praktikum terhadap user dnd di localhost. 
 > Revoke all privileges On praktikum.* From kulo@localhost; 
 > flush privileges; 
• Dicabut hak akses insert dan select dalam database orderentry dengan tabel customers terhadap user kulo di localhost. 
 > Revoke select,insert On orderentry.customers From kulo@localhost; 
 > flush privileges; 

TUGAS !!!

Membuat user dengan nama

Memberikan hak akses terhadap user baru dengan GRANT Insert pada Table Vendors

Hasil Pemberian hak akses dengan melakukan login dan insert/update/delete data table vendors     menggunakan user

Cabut hak akses tersebut dengan REVOKE

Dan setelah dilakukan hak akses dicabut :


Sekian, Terimakasih

Nama : Miftahul Jannah
NIM : 203100097
Prodi : Sistem Informasi

Read More

Share Tweet Pin It +1

0 Comments

In Bismillah Tugas

VIEW

Assalamualaikum warohmatullahi wabarokatuh.

Hallo semua kembali di Blog aku,Pada blog kali aku ingin membahas sedikit tentang View.

View dapat didefinisikan sebagai tabel maya (virtual) atau logical yang terdiri dari himpunan hasil query. Tidak seperti pada umumnya tabel di dalam basis data relasional, view bukanlah bagian dari skema fisik. View bersifat dinamis, ia mengandung data dari tabel yang direpresentasikannya. 

Dengan demikian, ketika tabel yang menjadi sumber datanya berubah, data di view juga akan berubah. Merujuk pda dokumentasi MySQL, sintaks pendefinisian view diperlihatkan sebagai berikut :

 Membuat database baru dengan nama data_kuliah




Membuat Tabel Mahasiswa



Membuat tabel dosen



Membuat tabel matakuliah


Membuat tabel ambil mk

Membuat table jurusan


View dapat berisi read-only atau updatable. Kondisi ini sangat dipengaruhi oleh adanya pendefinisian view itu sendiri. Bagaimanapun, untuk menciptakan updatable view, pernyataan SELECT yang didefinisikan di view harus mengikuti aturan-aturan sebagai berikut : 
 Pernyataan SELECT tidak boleh merujuk ke lebih dari satu tabel. 
 Pernyataan SELECT tidak boleh menggunakan klausa GROUP BY atau HAVING. 
 Pernyataan SELECT harus tidak menggunakan DISTINCT. 
 Pernyataan SELECT harus tidak merujuk ke view lain yang tidak updatable. 
 Pernyataan SELECT tidak boleh mengandung ekspresi apa pun, misalnya fungsi agregat. 

Pada hakikatnya, jika sistem database mampu menentukan pemetaan balik dari skema view ke skema tabel dasar, maka view memungkinkan untuk di update. Dalam kondisi ini, operasi-operasi INSERT, UPDATE dan DELETE dapat diterapkan pada view.

Membuat View vGetMhs dengan syntak SELECT * FROM mahasiswa
 

Menghapus View

View Kompleks

Membuat "vJoin"

Nested View
Membuat "vMK"



Membuat "vMK5" dengan syntak SELECT * FROM vMK WHERE semester = 5

Updatable View dengan membuat syntak SELECT * FROM vUpdate



Membuat "vmkoption" dengan syntak SELECT * FROM matakuliah WHERE semester < 2



Membuat "vmklocal" dengan syntak SELECT * FROM vmkoption WHERE semester > 0

Membuat view "vmkcascade" dengan syntak SELECT * FROM vmkoption WHERE sks > 0


Melakukan Insert pada vmklocal



Melakukan Insert pada vmkcascade




TUGAS PRAKTIKUM
1. Definisikan view untuk mendapatkan data mahasiswa yang hanya mengambil sks lebih dari 2 sks! 
2. Definisikan view dosen yang mengajar mahasiswa beserta jumlah mahasiswa yang diajar! 
3. Definisikan nested view dari tugas praktikum nomor 2 hanya dosen yang mengajar mahasiswa terbanyak! 

#Mendefinisikan view untuk mendapatkan data mahasiswa yang hanya mengambil sks lebih dari 2 sks
    dengan syntak :

hasil yang didapatkan :
#Mendefinisikan view dosen yang mengajar mahasiswa beserta jumlah mahasiswa yang diajar
    dengan syntak :
dengan hasil :
#Mendefinisikan nested view dari tugas praktikum nomor 2 hanya dosen yang mengajar mahasiswa terbanyak
    dengan syntak :



dengan hasil :


TUGAS RUMAH
1. Definisikan nested view untuk mendapatkan data mahasiswa yang jenis kelaminnya laki-laki dengan main view berupa mahasiswa yang mengambil sembarang matakuliah yang sksnya lebih dari sks terkecil ! 
2. Definisikan updatable view dengan local check option untuk mendapatkan data matakuliah dengan sks diantara 1 dan 4.

 Membuat view dengan mahasiswa yang jenis kelaminnya laki-laki





Membuat view dengan main v berupa mahasiswa yang mengambil mata kuliah yang sksnya lebih kecil




Mendefinisikan updatable view dengan local check option untuk mendapatkan data matakuliah dengan sks diantara 1 dan 4.
saat saya melakukan praktikum dengan menggunakan local check option, hal yang terjadi malahan error dan view tidak terbentuk. dan saya menghapus local di check option view terbentuk.


Terima kasih 
sampai jumpa dipembahasan lainya guyss

Wassalamualaikum wr,wb.

Nama : Miftahul Jannah
NIM: 203100097
Prodi : Sistem Informasi




Read More

Share Tweet Pin It +1

0 Comments

Cari Blog Ini

Diberdayakan oleh Blogger.

About Me

Popular Posts