View
6.1 Membuat View
Sebuah
view adalah tabel yang dibangun dari satu atau beberapa tabel yang sudah ada.
Secara fisik, view tidak membuat penyimpana data seperti tabel, melainkan hanya
menyimpan referensi / pointer ke dalam record pada tabel – tabel yqang
berkaitan. View disebut juga “virtual table”. Secara umum sintaks dari view
adalah :
CREATE VIEW nama_view (kolom 1, kolom 2, … ) AS
SELECT kolom_1, kolom_2, …
FROM NamaTabel
WHERE Kondisi
Sebagai contoh adalah sebuat VIEW
yang terbentuk dari satu tabel.
SQL> CREATE VIEW v1 AS
2 SELECT ssn,fname , lname FROM employee;
Karena VIEW dibentuk tanpa
mencantumkan nama kolom baru maka v1 mewarisi kolom yang dipilih pada tabel
instruktur. Untuk melihat VIEW :
SQL> SELECt * FROM v1;
Berikut membuat VIEW yang mempunyai
nama kolom baru yaitu BomorPegawai, NamaDepan , NamaBelakang dari data pegawai .
SQL> CREATE VIEW v1
(NomorPegawai,NamaDepan, NamaBelakang) AS
2 SELECT ssn,fname , lname FROM employee;
6.2 VIEW dari Beberapa Tabel
VIEW
dapat diciptakan dari beberapa tabel, misalnya sebuah join sederhana berikut
ini :
VIEW v4 terdiri atas kolom yang
dihasilkan melalui SELECT, yaitu nama employee, kode employee dan nomor KTP
SQL> CREATE VIEW v4 AS
2 SELECT ssn, fname, lname , dept.dname
3 FROM employee, dept
4 WHERE employee.dnumber = dept.dnumber ;
6.3 UPDATING Melalui VIEW
UPDATING dapat dilakukan kedalam
VIEW dengan memberikan nilai seperti
pada UPDATING Tabel. Namun perlu diperhatikan “NOT NULL” option dan
constraint lainnya, sebelum memasukkan nilai kedalam VIEW.
Contoh :
SQL>INSERT INTO v1 VALUES (‘32101’, ‘DANDI’,’SUTRISNO’)
;
Agar konsistensi dapat dijaga,
makapada saat VIEW dibuat, pada akhir instruksi harus ditambahkan “WITH CHEK
OPTION”.
6.4 Mengubah VIEW
Untuk dapat langsung mengubah VIEW
tanpa harus menghapus lebih dahulu, maka kunci kata CREATE OR REPLACE TABLE dapat digunakan, seperti kita
lihat pada contoh :
SQL>CREATE OR REPLACE VIEW v4 AS
2 SELECT SSN, FNAME , SALARY , DEPT.DNAME
3 FROM employee , dept
4 WHERE employee.ssn = dept.ssn ;
Melalui VIEW dapat dilakukan INSERT,
UPDATE, dan DELETE dengan beberapa limitasi yaitu :
- Tidak dapat memasukkan record baru
jika mengabaikan nilai NOT NULL pada basis tabel dari VIEW tersebut
- Tidak dapat melakukan INSERT atau
UPDATE jika salah satu kolom dalam VIEW merupakan hasil kalkulasi atau fungsi
- Tidak dapat melakukan INSERT, UPDATE
jika salah satu kolom dalam VIEW terdapat GROUP BY atau DISTINCT
6.5 Menghapus VIEW
VIEW
dapat dihapus dengan menggunakan DROP VIEW seperti berikut:
SQL> DROP VIEW v1;
No comments:
Post a Comment
silahkan membaca dan berkomentar