Ringkasan : dalam tutorial ini, Anda akan belajar tentang tampilan dan cara mengelola tampilan seperti membuat tampilan baru, menghapus tampilan, dan memperbarui data tabel yang mendasari melalui tampilan.
Saat Anda menggunakan SELECT
pernyataan untuk membuat kueri data dari satu atau beberapa tabel, Anda mendapatkan kumpulan hasil.
Misalnya, pernyataan berikut mengembalikan nama produk, merek, dan harga jual semua produk dari tabel products
dan :brands
SELECT product_name, brand_name, list_price FROM production.products p INNER JOIN production.brands b ON b.brand_id = p.brand_id;
Lain kali, jika Anda ingin mendapatkan kumpulan hasil yang sama, Anda dapat menyimpan kueri ini ke dalam file teks, membukanya, dan menjalankannya lagi.
SQL Server menyediakan cara yang lebih baik untuk menyimpan kueri ini dalam katalog database melalui tampilan.
Tampilan adalah kueri bernama yang disimpan dalam katalog database yang memungkinkan Anda untuk merujuknya nanti.
Sehingga query di atas dapat disimpan sebagai view dengan menggunakan CREATE VIEW
pernyataan sebagai berikut:
CREATE VIEW sales.product_info AS SELECT product_name, brand_name, list_price FROM production.products p INNER JOIN production.brands b ON b.brand_id = p.brand_id;
Nanti, Anda dapat merujuk ke tampilan dalam SELECT
pernyataan seperti tabel sebagai berikut:
SELECT * FROM sales.product_info;
Saat menerima kueri ini, SQL Server menjalankan kueri berikut:
SELECT * FROM ( SELECT product_name, brand_name, list_price FROM production.products p INNER JOIN production.brands b ON b.brand_id = p.brand_id; );
Menurut definisi, tampilan tidak menyimpan data kecuali tampilan yang diindeks .
Tampilan dapat terdiri dari kolom dari beberapa tabel menggunakan gabungan atau hanya subset kolom dari satu tabel. Ini membuat tampilan berguna untuk mengabstraksi atau menyembunyikan kueri kompleks.
Gambar berikut mengilustrasikan tampilan yang menyertakan kolom dari beberapa tabel:
Keuntungan dari tampilan
Secara umum, pandangan memberikan keuntungan sebagai berikut:
Keamanan
Anda dapat membatasi pengguna untuk mengakses langsung ke tabel dan mengizinkan mereka mengakses subset data melalui tampilan.
Misalnya, Anda dapat mengizinkan pengguna untuk mengakses nama pelanggan, telepon, email melalui tampilan tetapi membatasi mereka untuk mengakses rekening bank dan informasi sensitif lainnya.
Kesederhanaan
Sebuah database relasional mungkin memiliki banyak tabel dengan hubungan yang kompleks misalnya, satu-ke-satu dan satu-ke-banyak yang membuatnya sulit untuk dinavigasi.
Namun, Anda dapat menyederhanakan kueri kompleks dengan gabungan dan ketentuan menggunakan sekumpulan tampilan.
Konsistensi
Terkadang, Anda perlu menulis rumus atau logika yang rumit di setiap kueri.
Untuk membuatnya konsisten, Anda bisa menyembunyikan logika dan perhitungan kueri yang kompleks dalam tampilan.
Setelah tampilan ditentukan, Anda dapat mereferensikan logika dari tampilan daripada menulis ulang dalam kueri terpisah.