A Agama
B Basdat
C KKPMT
65
Tabel KRS
NIU Kode Nilai
00114 A 90
01052 A 70
01104 A 67
01052 B 88
01104 B 99
00993 B 87
00066 C 67
00287 C 78
01040 C 89
1. Tampilkan Nilai tertinggi
2. Tampilkan Daftar NIM dan Rata-rata yang didapat setiap Mhs 3. Tampilkan NIM dan Nilai mahasiswa yang mendapat nilai tertinggi 4. Tampilkan NIM dan Nilai mahasiswa yang mendapat nilai 'A' tertinggi 5. Tampilkan NIM dan Nilai mahasiswa yang mendapat nilai 'Basdat' tertinggi 6. Tampilkan kode Matkul dimana 'Anik' mendapat nilai tertinggi.
7. Tampilkan NIM dan nilai rata-rata untuk mahasiswa yang nilai rata-ratanya tertinggi
Penilaian:
a. Keaktifan mahasiswa dalam praktikum
66 Kasus:
1. Masukkan data berikut ke dalam tabel salaries!
emp_no Salary from_date to_date
10001
10002
10003
10004
10005
10006
10007
10008
10008
10009
10009
10010
100118005000
3505000
3905000
4005000
13505000
2505000
8505000
8005000
5005000
8005000
9005000
10005000
30050002011-01-01
2013-05-01
2012-05-06
2012-05-06
2010-05-06
2011-11-11
2011-10-12
2005-01-12
2010-01-12
2008-10-10
2013-10-10
2012-01-01
2011-01-112016-01-01
2018-05-01
2017-05-06
2017-05-06
2015-05-06
2016-11-11
2016-10-12
2010-01-11
2015-01-12
2013-10-09
2018-10-10
2017-01-01
2016-01-112. Tambahkan 100000 pada data gaji pegawai dengan nomor pegawai (emp_no) 10003!
3. Buatlah tiga buah contoh perintah SQL yang terdapat kata kunci IN, ANY, dan SOME di dalamnya!
4. Dapatkah melakukan penghapusan data pada lebih dari satu tabel dengan hanya menggunakan satu perintah SQL?
67
LEMBAR KERJA
69 MATERI 10
VIEW
Kompetensi:
Mahasiswa mampu membuat dan memanfaatkan view Maksud dan tujuan:
a. Mahasiswa mengerti dan memahami view
b. Mahasiswa mengerti dan memahami kapan dan bagaimana view digunakan. Landasan teori:
Perintah VIEW adalah perintah dalam MySQL untuk membuat sebuah tabel virtual dengan cara menyimpan query SELECT di sebuah basis data. VIEW dapat diterapkan pada MySQL mulai dari MySQL versi 5.0.2. Perintah ini dapat dimanfaatkan untuk menunjang keamanan data, mengatur akses ke data, dan juga meningkatkan efisiensi basis data.
Bentuk umum perintah untuk membuat VIEW yang paling sederhana adalah sebagai berikut:
CREATE [OR REPLACE] VIEW nama_view [(list_kolom)] AS query_select
Karena VIEW adalah bagian dari sebuah basis data, maka nama_view pada perintah diatas disebutkan dengan [database_name].[view_name] jika ingin membuat VIEW untuk basis data tertentu atau bisa juga langsung nama VIEW apabila perintah pembuatan VIEW dituliskan ketika sebuah basis data tertentu yang akan diberi VIEW tersebut sedang digunakan. Perhatikan contoh VIEW berikut:
CREATE
VIEW jml_pegawai(jumlah_pegawai) AS SELECT COUNT(*) FROM employees;
Perintah di atas akan membuat VIEW yang mempunyai satu buah kolom bernama jumlah_pegawai berisi data jumlah pegawai. Untuk berinteraksi dengan VIEW yang telah dibuat, dapat digunakan perintah SELECT seperti pada tabel biasa. Contoh:
SELECT * FROM jml_pegawai;
Perintah SELECT yang digunakan VIEW
Mengubah sebuah VIEW dapat menggunakan perintah ALTER VIEW. Penggunaan perintah ALTER VIEW sangat mirip dengan CREATE VIEW, yaitu hanya dengan mengganti kata kunci CREATE dengan ALTER.
ALTER
VIEW nama_view [(list_kolom)] AS query_select
70 Untuk menghapus VIEW digunakan perintah:
DROP VIEW [IF EXISTS] [database_name].[view_name]
Sebagai contoh untuk menghapus VIEW jumlah_pegawai digunakan perintah berikut:
DROP VIEW jml_pegawai; Contoh :
mysql> CREATE VIEW karyawan_bantul(nip,nama) AS SELECT nip,nama FROM pribadi
-> WHERE kota='Bantul';
Query OK, 0 rows affected (0.08 sec) Untuk menampilkan view :
mysql> SELECT * FROM karyawan_bantul; +---+---+
| nip | nama | +---+---+ | 12341 | Hamdan Arif | +---+---+ 1 row in set (0.00 sec)
View mempermudah proses select, jika ada perintah join maka perintah tersebut sudah disimpan dalam definisi view. Adanya view memungkinkan kita untuk melakukan proses pemfilteran lebih rinci, karena hasil dari suatu view dapat dianggap sebagai tabel virtual. Sebagai suatu tabel virtual, view akan memiliki kolom-kolom yang sesuai dengan nama- nama kolom yang ada pada ekspresi query.
View merupakan alias yang berupa isi sebagian suatu tabel atau gabungan beberapa tabel yang disederhanakan proses pembacaannya.
Pembuatan view seringkali berhubungan dengan masalah keamanan agar pengakses data tidak perlu mengetahui secara fisik ada di mana data tersebut berada dan apa criteria yang digunakan untuk membuat view tersebut, sehingga sebagian pemakai hanya diberikan akses hanya kepada view.
Daftar pustaka:
Buku Modul Praktikum Basis Data Komputer dan Sistem Informasi Sekolah Vokasi UGM
71 LATIHAN/KASUS
MySQL Alat dan bahan praktikum:
a. Modul praktikum b. Alat Tulis
c. Komputer yang sudah terinstal MySql Kegiatan praktikum:
Kegiatan 1
Buatlah Database rental dengan tabel-tabel berikut: Pemilik
noKTPMilik Nama Alamat noTelp
112 adi jogja 123
113 agung jogja 123 114 budi jogja 123 116 lusi jogja 123
penyewa
noKTPSewa Nama Alamat noTelp 232 badu bantul 123 234 bidu bantul 123 235 bude sleman 123
265 oma jogja 123
Mobil
noPlat Merk HargaSewa noKTPMilik warna
AD 3456 BB CRZ 500000 112 merah
AB 1719 QE Xenia 250000 114 silver
AB 1234 FC Inova 300000 113 hitam
B 6756 TOP Inova 300000 114 hitam
Sewa
noKTPSewa noPlat tglSewa tglKembali
234 AD 3456 BB 1 Maret 2014 2 Maret 2014 234 AB 1719 QE 2 Maret 2014 3 Maret 2014 235 B 6756 TOP 4 Maret 2014 5 Maret 2014 1. Buat View yang mungkin.
2. Gunakan View yang telah dibuat 3. Hapus View yang telah dibuat
72 Penilaian:
a. Keaktifan mahasiswa dalam praktikum
b. Kemampuan dalam menangkap dan menjalankan perintah Instruktur Kasus:
Buatlah tabel Mahasiswa, MataKuliah dan KRS dengan deskripsi tabel sebagai berikut:
Tabel Mahasiswa
NIU Nama Prodi 00114 Alfi Rekmed 01052 Wahyu Rekmed 01104 Syifa Pend. Dokter 00888 Anik Gizi 00993 Agnes Ilkom 00066 Derti Kimia 00287 Syifa Matematika 01040 Dahlia Statistika Tabel Kelas MK Kode Nama A Agama B Basdat C KKPMT Tabel KRS
NIU Kode Nilai
00114 A A 01052 A B 01104 A A 01052 B B 01104 B A 00993 B B 00066 C A 00287 C C 01040 C A
1. Buatlah sebuah View bernama “rekapMatkul” untuk menampilkan kode, nilai rata-rata, nilaitertinggi, nilaiterendah, dan jumlah mahasiswa (jumlah mahasiswa yang sudah mengambil) untuk setiap kode matkul;
73 2. Buatlah sebuah View bernama “RekapPerMahasiswa” untuk menampilkan nilai rata-rata, nilai tertinggi, nilai terendah, dan jumlahtotal (jumlah matkul yang sudah diambil) oleh mahasiswa dengan nim 01040 3. Buatlah View yang menampilkan:
1. Tampilkan Nilai tertinggi
2. Tampilkan Daftar NIM dan Nilai tertinggi yang didapat setiap Mhs 3. Tampilkan rata-rata nilai
4. Tampilkan rata-rata nilai matakuliah 'B'
5. Tampilkan Daftar NIM dan Rata-rata yang didapat setiap Mhs 6. Tampilkan Nilai terendah
7. Tampilkan selisih nilai tertinggi dengan nilai terendah
74 LEMBAR KERJA