TUGAS 5 - Pengunaan View Dengan 2 Contoh Kasus Yang Berbeda.

 

Pengertian VIEW MySQL


Di dalam MySQL, View dapat didefenisikan sebagai ‘tabel virtual’. Tabel ini bisa berasal dari tabel lain, atau gabungan dari beberapa tabel. 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). 

Contoh Kasus 1: Menggabungkan Data dari Beberapa Tabel

Misalkan kita memiliki dua tabel, yaitu "Pelanggan" dan "Pesanan". Kita ingin membuat tampilan (view) yang menggabungkan data dari kedua tabel tersebut, sehingga kita dapat dengan mudah melihat informasi pelanggan beserta pesanan yang mereka lakukan.


- Membuat Tabel Pelanggan.

CREATE TABLE Pelanggan (

id_pelanggan INT PRIMARY KEY,

nama_pelanggan VARCHAR(50),

alamat VARCHAR(100)

);

Membuat Tabel Pelanggan.

CREATE TABLE Pesanan (

  id_pesanan INT PRIMARY KEY,

  id_pelanggan INT,

  nama_produk VARCHAR(50),

  jumlah INT,

  FOREIGN KEY (id_pelanggan) REFERENCES Pelanggan(id_pelanggan)

);


-- Memasukkan Data ke Tabel Pelanggan

INSERT INTO Pelanggan (id_pelanggan, nama_pelanggan, alamat)

VALUES (1, 'Kehlani', 'Jalan Raya No 12'),

(2, 'Danu', 'Jalan Kerta Indah );


-- Memasukkan Data ke Tabel Pesanan

INSERT INTO Pesanan (id_pesanan, id_pelanggan, nama_produk, jumlah)

VALUES (1, 1, 'Novel', 3),

                (2, 2, 'Pulpen', 5);


-- Membuat View untuk Menggabungkan Data

CREATE VIEW InformasiPesanan AS

SELECT p.id_pelanggan, p.nama_pelanggan, p.alamat, ps.nama_produk, ps.jumlah

FROM Pelanggan p

JOIN Pesanan ps ON p.id_pelanggan = ps.id_pelanggan;


view "InformasiPesanan" yang menggabungkan data dari tabel "Pelanggan" dan "Pesanan". Kita dapat menggunakan perintah berikut untuk melihat data dari view tersebut:


sql

SELECT * FROM InformasiPesanan;


Contoh Kasus 2: Membatasi Akses ke Data

Kadang-kadang kita ingin memberikan akses terbatas pada tabel, sehingga hanya sebagian data yang dapat dilihat oleh pengguna. Dalam contoh ini, kita akan membuat view yang hanya menampilkan pelanggan dengan alamat di kota tertentu.


-- Membuat Tabel Pelanggan

CREATE TABLE Pelanggan (

  id_pelanggan INT PRIMARY KEY,

  nama_pelanggan VARCHAR(50),

  alamat VARCHAR(100)

);


-- Memasukkan Data ke Tabel Pelanggan

INSERT INTO Pelanggan (id_pelanggan, nama_pelanggan, alamat)

VALUES (1, 'Kehlani', 'Jalan Raya No 12'),

                (2, 'Danu', 'Jalan Kerta Indah );

               (3, 'Adam', 'Jalan Indah');


-- Membuat View untuk Membatasi Akses ke Data

CREATE VIEW PelangganBogor AS

SELECT *

FROM Pelanggan

HERE alamat LIKE '%Bogor%';


Sekarang kita memiliki view "PelangganJakarta" yang hanya menampilkan data pelanggan dengan alamat di Jakarta. Kita dapat menggunakan perintah berikut untuk melihat data dari view tersebut:


sql

SELECT * FROM PelangganBogor;

Dalam contoh ini, hanya pelanggan dengan alamat di Bogor yang akan ditampilkan.


Komentar