Data yang ada di View akan selalu
up to date seiring dengan data yang ada di tabel.
Membuat View
Untuk membuat sebuah view di MySQL, Anda dapat menggunakan perintah
CREATE VIEW. Di bawah ini adalah sintak dasar untuk membuat view di
MySQL:
1 | CREATE VIEW nama_view AS |
2 | SELECT kolom_1, kolom_2, kolom_n |
Di bawah ini adalah langkah-langkah dalam membuat view sebagai bahan latihan.
- Buatlah sebuah table KARYAWAN dan isi datanya seperti berikut ini.
Tabel KARYAWAN
NIK |
Nama |
Kode_Department |
Gender |
Gaji_Pokok |
Tunjangan |
0001 |
Nursalim |
IT |
L |
3000000 |
250000 |
0002 |
Naura Krasiva Elsalna |
ACCOUNTING |
P |
1750000 |
100000 |
0003 |
Nani Indriyani |
IT |
P |
2750000 |
200000 |
0004 |
Ahmad Fathoni |
HRD |
L |
1000000 |
100000 |
0005 |
Bayu Dirgantara |
IT |
L |
3000000 |
250000 |
Script Buat Table
1 | mysql> CREATE TABLE karyawan ( |
2 | -> nik VARCHAR (5) NOT NULL PRIMARY KEY , |
3 | -> nama VARCHAR (50) NOT NULL , |
4 | -> gender CHAR (1) NOT NULL , |
5 | -> department VARCHAR (30) NOT NULL , |
6 | -> gaji_pokok BIGINT (10) NOT NULL , |
7 | -> tunjangan BIGINT (10) NOT NULL |
9 | Query OK, 0 rows affected (0.15 sec) |
Script Insert Data
01 | mysql> INSERT INTO karyawan VALUES ( '0001' , 'Nursalim' , 'L' , 'IT' ,3000000,250000); |
02 | Query OK, 1 row affected (0.11 sec) |
04 | mysql> INSERT INTO karyawan VALUES ( '0002' , 'Naura Krasiva Elsalna' , 'P' , 'ACCOUNTING' ,1750000,100000); |
05 | Query OK, 1 row affected (0.13 sec) |
07 | mysql> INSERT INTO karyawan VALUES ( '0003' , 'Nani Indriyani' , 'P' , 'IT' ,2750000,200000); |
08 | Query OK, 1 row affected (0.06 sec) |
10 | mysql> INSERT INTO karyawan VALUES ( '0004' , 'Ahmad Fathoni' , 'L' , 'HRD' ,1000000,100000); |
11 | Query OK, 1 row affected (0.06 sec) |
13 | mysql> INSERT INTO karyawan VALUES ( '0005' , 'Bayu Dirgantara' , 'L' , 'IT' ,3000000,250000); |
14 | Query OK, 1 row affected (0.11 sec) |
- Tampilkan data dari tabel KARYAWAN
01 | mysql> SELECT * FROM karyawan; |
03 | | nik | nama | gender | department | gaji_pokok | tunjangan | |
05 | | 0001 | Nursalim | L | IT | 3000000 | 250000 | |
06 | | 0002 | Naura Krasiva Elsalna | P | ACCOUNTING | 1750000 | 100000 | |
07 | | 0003 | Nani Indriyani | P | IT | 2750000 | 200000 | |
08 | | 0004 | Ahmad Fathoni | L | HRD | 1000000 | 100000 | |
09 | | 0005 | Bayu Dirgantara | L | IT | 3000000 | 250000 | |
11 | 5 rows in set (0.00 sec) |
- Buatlah sebuah view dengan nama V_KARYAWAN_IT yang mempunyai kolom
NIK, Nama, Jenis Kelamin, Gaji Bersih dimana Gaji Bersih adalah Gaji
Pokok + Tunjangan dari departement IT.
1 | mysql> CREATE VIEW V_KARYAWAN_IT AS |
2 | -> SELECT nik, nama, gender "Jenis Kelamin" , gaji_pokok+tunjangan "Gaji Bersih" |
4 | -> WHERE department = 'IT' ; |
5 | Query OK, 0 rows affected (0.04 sec) |
- Tampilkan data dari view V_KARYAWAN_IT dengan menggunakan MySQL command line
1 | mysql> SELECT * FROM V_KARYAWAN_IT; |
3 | | nik | nama | Jenis Kelamin | Gaji Bersih | |
5 | | 0001 | Nursalim | L | 3250000 | |
6 | | 0003 | Nani Indriyani | P | 2950000 | |
7 | | 0005 | Bayu Dirgantara | L | 3250000 | |
9 | 3 rows in set (0.00 sec) |
Menampilkan Daftar View
Anda dapat menampilkan daftar atau list view yang ada di database MySQL dengan menggunakan perintah di bawah ini:
1 | mysql> SHOW FULL TABLES IN hr WHERE TABLE_TYPE LIKE 'VIEW' ; |
3 | | Tables_in_hr | Table_type | |
5 | | v_karyawan_it | VIEW | |
Meng-Update View
Anda dapat meng-update view sesuai dengan kebutuhan Anda seperti
menambahkan kolom pada view ataupun menambahkan filter pada Where Clause
di view tersebut. Untuk mengupdate view, Anda bisa menggunakan perintah
CREATE OR REPLACE VIEW.
Di bawah ini adalah sintak dasar untuk mengupdate view yang sudah ada di MySQL:
1 | CREATE OR REPLACE VIEW nama_view AS |
2 | SELECT kolom_1, kolom_2, kolom_n |
Sebagai Latihan, coba Anda modifikasi view V_KARYAWAN_IT diatas dengan
menambahkan filter HANYA karyawan yang berjenis kelamin laki-laki saja.
1 | mysql> CREATE OR REPLACE VIEW V_KARYAWAN_IT AS |
2 | -> SELECT nik, nama, gender "Jenis Kelamin" , gaji_pokok+tunjangan "Gaji Bersih" |
4 | -> WHERE department = 'IT' |
6 | Query OK, 0 rows affected (0.04 sec) |
Menghapus View (Drop View)
Di bawah ini adalah sintak dasar untuk menghapus view di MySQL
Contoh:
1 | DROP VIEW V_KARYAWAN_IT; |
Tidak ada komentar:
Posting Komentar