PRAKTIKUM VIEW

 Nama : Juliana Sari

Nim : 223100305

Prodi : Sistem Informasi


Assalamualaikum wr.wb , pada pertemuan kali ini kita akan melakukan uji coba praktikum VIEW.

Perhatikan pada gambar tugas berikut :

Dari modul yang akan kita lakukan uji coba langsung saja 

Panduan serta langkah-langkah ada pada modul tersebut!

1. Himpunan Entitas

        Dalam latihan ini, digunakan 5 buah tabel yaitu tabel mahasiswa, matakuliah, ambil_mk, dosen, dan jurusan. Langkah pertama yang akan kita lakukan yaitu kita harus membuat database baru terlebih dahulu baru kemudian 5 tabel beserta recordnya.

Seperti ini : 




- Selanjutnya lakukan select untuk melihat isinya.



2. Pembuatan view ( Dengan menggunakan terminal di laragon )

        View adalah objek di dalam database yang berisi kumpulan kolom yang dihasilkan dari Perintah select. Dengan kata lain yang lebih sederhana, view adalah object yang menyimpan hasil query, baik dari satu tabel atau lebih, didalam database view juga sering dinamakan sebagai “tabel virtual” , karena view sebenarnya tidak memiliki data. Data yang ditampilkan oleh sebuah view diambil dari tabel-tabel aktual yang disertakan dalam SELECT. 

        Tujuan dari pembuatan VIEW adalah untuk kenyamanan (mempermudah penulisan query), untuk keamanan (menyembunyikan beberapa kolom yang bersifat rahasia), atau dalam beberapa kasus bisa digunakan untuk mempercepat proses menampilkan data (terutama jika kita akan menjalankan query tersebut secara berulang).

Disini kita akan melakukan percobaan untuk membuat view.
- Perintah "CREATE VIEW" tersebut menandakan bahwa kita akan membuat sebuah view dengan    nama "vgetmhs". View tersebut akan menampilkan kolom nim, nama, jenis_kelamin, dan alamat       dari tabel mahasiswa.
- Selanjutnya yaitu perintah "select *from vgetmhs" yaitu menampilkan sebuah data yang ada           dalam view  "vgetmhs".

seperti ini :

- Perintah "SHOW CREATE VIEW vgetmhs" akan menampilkan definisi view "vgetmhs",              termasuk perintah SQL yang digunakan untuk membuat view tersebut.

seperti ini :

- Perintah "alter view vgetmhs as select nim, nama, alamat from mahasiswa where nim > 1;"       artinya yaitu mengubah definisi view "vgetmhs" agar hanya menampilkan baris dengan nilai           kolom nim yang lebih besar dari 1.

seperti ini :


- Selanjutnya karena ini hanya percobaan maka kita hapus terlebih dahulu dengan perintah DROP.

seperti ini :


A. View Kompleks

        View kompleks adalah jenis view yang melibatkan operasi- operasi kompleks seperti fungsi agregat, subquery, atau operasi join dalam definisinya. View kompleks memungkinkan pengguna untuk menghasilkan subset atau transformasi data yang lebih kompleks dari tabel yang mendasarinya. Hal ini memberikan fleksibilitas dan kemampuan untuk melakukan manipulasi data yang lebih lanjut menggunakan view tersebut.

        View 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

Contoh :

- Query tersebut akan membuat sebuah view yang disebut "vjoin" dengan menggunakan operasi           join antara tabel "matakuliah" dan "ambil_mk". View ini mengambil kolom-kolom tertentu dari       tabel "matakuliah" dan menggunakan left  join untuk menggabungkanya dengan tabel                       "ambil_mk". Selanjutnya, menggunakan klausul WHERE, hanya baris-baris yang tidak memiliki    kecocokan dalam join (a.kode_mk is null) yang akan ditampilkan dalam view ini. Dengan               begitu, view ini akan menampilkan matakuliah yang tidak diambil oleh mahasiswa.
- Selanjutnya kita menggunakan perintah select untuk menampilkan  semua data yang ada dalam           view "vjoin".

seperti ini :


B. Nested View

        Adalah istilah yang mengacu pada penggunaan view di dalam definisi view lainnya. Dalam konteks ini, view yang sudah ada digunakan sebagai salah satu komponen atau subquery dalam definisi view yang baru.
Contoh :
- create view vmk as select kode_mk, nama_mk, sks, semester, kode_dos, from matakuliah;
* Perintah ini akan membuat view baru dengan nama "vmk". View ini akan mengambil kolom-          kolom kode_mk, nama_mk, sks, semester, kode_dos, from matakuliah.

- create view vmk5 as select vmk.kode_mk, vmk.nama_mk, vmk.sks, vmk.semester,                      vmk.kode_dos, ambil_mk.nim from vmk join ambil_mk on vmk.kode_mk =                               ambil_mk.kode_mk where semester = 5;
* Perintah tersebut akan membuat view baru dengan nama "vmk5". View ini akan menggabungkan       kolom-kolom dari view "vmk" dan tabel "tabel_mk" dengan kondisi join antara kolom                       "kode_mk" pada kedua entitas. Hanya data dengan nilai "semester" sama dengan 5 yang akan           diambil.

- Selanjutnya jalankan perintah select untuk melihat hasilnya sesuai dengan

seperti ini :


C. Updatabel View
        
      Updatable view adalah jenis view yang memungkinkan anda melakukan operasi insert, update, dan delete pada data melalui view tersebut. Dengan view yang dapat diubah, anda dapat memodifikasi data di tabel yang mendasarinya melalui view tanpa perlu mengakses tabel secara langsung. Anda dapat menggunakan perintah insert, update, dan delete  pada view untuk memperbarui data yang sesuai dalam tabel yang mendasarinya. Updatable view memberikan fleksibilitas dalam mengelola dan memanipulasi data dengan cara yang lebih terstruktur.
Contoh :
- create view vupdate as select nim, nama, jenis_kelamin, alamat from mahasiswa;
* Perintah tersebut berarti kita akan membuat view baru bernama "vupdate" yang akan                        menampilkan kolom nim, nama, jenis_kelamin, dan alamat dari tabel mahasiswa.
- Kemudian, perintah "select*from vupdate" akan menampilkan data dari view tersebut.

seperti ini :


- update vupdate set alamat = "Jl. Mangga" where nim = "107";
* Query tersebut bertujuan untuk mengubah nilai kolom "alamat" pada baris dengan nilai "nim"           yang sama dengan "107" dalam view "vupdate" menjadi "Jl. Mangga".
- Selanjutnya jalankan perintah select untuk melihat hasilnya sesuai dengan

seperti ini :

 
3. Pembuatan View ( Melalui Local Host PhpMyAdmin )

  • Masuk ke localhost/PhpMyAdmin
  • Masuk ke tabel mahasiswa di database yang sudah dibuat sebelumnya.


  • Pilih Create view

  • Isikan seperti di bawah ini


  • Pilih GO
  • Buka view yang sudah dibuat sebelumnya

  • Menampilkan Query View
  • Memodifikasi View
  • Masuk pada tab "Structure" dari view vgetmhs



  • Menghapus View

  • Pilih "Drop" pada view yang akan dihapus



3. View Kompleks

        View 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.

a. Buat view "vjoin" dengan query sebagai berikut:


b. Eksekusi pembuatan view

c. Buka view vjoin



d. Tampilan vjoin


4. Nested View

        Umumnya view diciptakan dengan mengacu pada tabel (seperti contoh-contoh sebelumnya). Namun juga tak menutup kemungkinan bagi kita untuk menciptakan view yang mengacu pada view. Pendekatan inilah yang dikenal sebagai view bersarang (nested view).

a. Buatlah view vMK seperti pada gambar dibawah ini :


b. Eksekusi pembuatan view

c. Buatlah view vMK5 seperti pada gambar dibawah ini :


d. Eksekusi pembuatan view

e. Lakukan Browse pada vMK5


5. Updatable View

        Sebagaimana disinggung di awal, view dapat bersifat updatable. Untuk mengetahui lebih jelasnya, perhatikan dan ikuti langkah-langkah berikut:

a. Buatlah view sederhana sebagai serikut :


b. Periksa hasilnya, apakah view sudah terbuat atau belum 


c. Lakukan perintah update pada view vUpdate


d. Periksa hasilnya pada view vUpdate dan periksa record dari tabel mahasiswa


e. Terlihat bahwa modifikasi di view vUpdate akan memengaruhi data di tabel mahasiswa.


6. Check Option

        Pada saat menciptakan updatable view, MySQL mengizinkan kita untuk menspesifikasikan bagaimana parser akan bekerja. Langkah ini dilakukan dengan mengaktifkan CHECK OPTION. Sederhananya, opsi ini mengakibatkan parser mereview klausa WHERE ketika memproses pernyataan update di view.
        Ada dua jenis keyword yang bisa digunakan saat aktivasi check option: LOCAL dan CASCADED. Keyword LOCAL membatasi pemeriksaan hanya sebatas pada view yang didefinisikan, sedangkan mencakup semua view yang terkait misalkan dalam kasus nested view.

Untuk mengetahui penggunaan check option, perhatikan langkah-langkah berikut:
a. Definisikan Updatable view sebagai berikut:


b. Definisikan nested view dengan Local Check Option sebagai berikut:



c. Definisikan nested view dengan Cascaded Check Option sebagai berikut:



d. Eksekusi perintah Insert pada vmklocal



e. Eksekusi perintah Insert pada vmkcascade




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


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


Jika ingin menggunakan phpMyAdmin seperti dibawah ini :

- Definisikan view untuk mendapatkan data mahasiswa yang hanya mengambil sks lebih dari 2 sks!





- Definisiskan view dosen yang mengajar mahasiswa beserta jumlah mahasiswa yang diajar!





- Definisikan nested view dari tugas praktikum nomor 2 hanya dosen yang mengajar mahasiswa terbanyak!




  • TUGAS RUMAH
- 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!


Jika ingin menggunakan phpMyAdmin seperti dibawah ini :

- Buat view sksterkecil terlebih dahulu




- Setelah itu baru buatlah view mahasiswa laki-laki




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



Jika ingin menggunakan phpMyAdmin seperti dibawah ini :





Terimakasih wassalamualaikum wr.wb.

seee uuuuuu























Komentar