Data Manipulation Language View

 Assalamualaikum wr.wb 


Selamat datang di blog DML (Data Manipulation Language)! Pada kesempatan kali ini, kita akan membahas tentang "View" dalam konteks basis data relasional. View dapat didefinisikan sebagai tabel maya atau logical yang terdiri dari hasil query. Namun, perbedaan utama antara view dan tabel pada basis data relasional adalah bahwa view bukanlah bagian dari skema fisik.

View bersifat dinamis, yang berarti bahwa view hanya menyimpan definisi query-nya, bukan data aktual yang ada di tabel yang direpresentasikannya. Ketika data dalam tabel sumber berubah, data dalam view juga akan berubah secara otomatis sesuai dengan definisi query-nya. Dengan kata lain, view memberikan pandangan terkini atas data yang ada di tabel sumber.

Praktikum membuat database mahasiswa dengan kerangka tabel seperti gambar dibawah




jika sudah membuat database dan tabel jangan lupa input data dulu yaa




  1. Pembuatan View
a.Masuk ke Localhost/PHPMyAdmin/ b. Masuk ke tabel mahasiswa di database yang sudah dibuat sebelumnya


c. pilih create view


d. isikan seperti gambar di bawah klik go



hasil




2. Membuat View Komplek
View ini dapat mendefinisikan suatu pernyataan yang kompleks, misalnya melibatkan fungsi-fungsi agregat,join atau bahkan subquery. Sebagai ilustrasi view berikut melibatkan join untuk mendapatkan matakuliah yang tidak diambil oleh mahasiswa terdaftar


Query apa saja yang harus dituliskan dalam membuat view komplek yang saya beri nama vjoin




3. Membuat Nested View

klik create view >> berikan nama vmk (view mata_kuliah) dengan query select*from mata_kuliah
maka hasilnya akan seperti gambar di bawah ini
a. membuat view mata_kuliah dimana berisi mahasiswa semester 5

4.updatable view

"updatable view" adalah view yang memungkinkan operasi pembaruan (update), penghapusan (delete), dan penambahan (insert) terhadap data yang ditampilkan oleh view tersebut. Dengan kata lain, pengguna dapat mengubah data dalam view dan perubahan tersebut akan tercermin pada tabel sumber yang menjadi basis view tersebut.

Namun, tidak semua view dapat diubah. Ada beberapa persyaratan yang harus dipenuhi agar sebuah view dapat dianggap updatable. Berikut adalah beberapa persyaratan umum:

  1. Kolom yang akan diubah harus berasal dari satu tabel dalam view. Jika view menggabungkan beberapa tabel, maka operasi update hanya dapat dilakukan pada satu tabel yang berpartisipasi dalam view.

  2. View tidak boleh mengandung fungsi agregat (misalnya SUM, COUNT) atau klausa GROUP BY. Hal ini dikarenakan fungsi agregat menggabungkan beberapa baris menjadi satu, sehingga tidak jelas bagaimana perubahan data harus diterapkan.

  3. Tabel sumber yang mendasari view harus memiliki kunci utama (primary key) yang dapat digunakan untuk mengidentifikasi baris secara unik. Kunci utama ini digunakan untuk memastikan bahwa pembaruan data dilakukan pada baris yang tepat dalam tabel sumber.

  4. Tidak boleh ada kolom computed (dihasilkan dari ekspresi atau perhitungan) dalam view yang akan diubah. Hal ini karena perubahan pada kolom computed tidak dapat langsung diterapkan pada tabel sumber.

buatlah view update seperti langkah  langkah sebelumnya , kalau sudah tulis perintah query ini dengan cara klik 2 kali pada view yang diberi nama vupdate >> lalu klik option SQL



hasil 



hasilnya berubah dengan cara mengupdate nama jalan dari jalan malang menjadi jalan mangga


5. CHECK OPTION
Dalam MySQL, saat kita membuat updatable view, kita dapat menggunakan CHECK OPTION untuk mengatur bagaimana parser akan berfungsi. CHECK OPTION memungkinkan parser untuk meninjau klausa WHERE ketika memproses pernyataan update pada view. Terdapat dua jenis keyword yang dapat digunakan saat mengaktifkan CHECK OPTION, yaitu LOCAL dan CASCADED. Dengan menggunakan keyword LOCAL, pemeriksaan hanya berlaku pada view yang sedang didefinisikan, sedangkan dengan keyword CASCADED, pemeriksaan mencakup semua view terkait, termasuk nested view.

a. mendefinisikan updateable view

Hasil

b.  mendefnisikan nested view dengan Local Check Option



Eksekusi perintah Insert pada vmklocal






Eksekusi perintah Insert pada vmkcascade



Penambahan pada view vMkCascade gagal dilaksanakan karena terhambat oleh rule opsi CASCADED dimana view induk (vMkOption) menyaratkan bahwa sks harus kurang dari 2



PENUGASAN PRAKTIKUM

1.mendefinisikan view untuk mendapatkan data mahasiswa yang hanya mengambil sks lebih dari 2 sks



maka hasil yang dikeluarkan adalah 

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!


4. 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 ! 

maaf saya menggunakan laragon untuk membantu membuat nested view , karna menggunakan sql pada phpmyadmin mengalami kendala eror




5. Definisikan updatable view dengan local check option untuk mendapatkan data matakuliah dengan sks diantara 1 dan 4






Demikianlah pembahasan singkat mengenai DML (Data Manipulation Language) View dalam basis data relasional.

Nama : Remila Nur Rahma Putri

NIM : 223100310

Prodi : Sistem Informasi /1

sumber :http://elektro.um.ac.id/wp-content/uploads/2016/04/Basis-Data-Modul-9-View.pdf

Komentar

Postingan populer dari blog ini

Insert, Select, Update, Delete Pada DML ( Data Manipulation Language)

Membuat (Data Manipulation Language) trigger