Adminer (05): Menggabung Beberapa Tabel dalam Sebuah View
Anda sudah baca tulisan tentang tabel dengan relasi lojik? Kalau belum, sebaiknya baca dulu dan praktekkan. Karena tulisan ini memerlukan sedikit pemahaman tentang relasi lojik termasuk tabel dan isian datanya.
Menggabung Tabel
Apa maksud menggabung tabel? Apa pula maksudnya view?
Jadi begini…
Menggabung tabel bukan dalam arti sebenarnya, sehingga beberapa tabel manjadi satu, tetapi bagian-bagian tertentu dari masing-masing tabel diambil (secara lojik) dan disatukan ke dalam sebuah “tabel bayangan” yang disebut dengan view. Wujud dari view sama dengan tabel, tetapi berbeda fungsi dan cara pengolahan datanya.
Pada tabel, bisa berlaku semua hal dalam pengolahan data, seperti filter data, menambah, mengedit, menghapus data. Sedangkan pada view, tidak bisa dilakukan penambahan data, mengedit dan menghapus data, hanya bisa melakukan filter data saja.
Konsep view
Silahkan perhatikan kembali gambar berikut ini.
Dari gambar di atas, setidaknya akan bisa dibuat 2 buah view untuk penggabungan beberapa tabel. View pertama adalah untuk view barang yang merupakan gabungan tabel barang dan jenis. Sedangkan view kedua adalah view inventaris yang adalah gabungan semua tabel.
Membuat View
Untuk membuat view silahkan ikuti tutorial yang akan dijelaskan selanjutnya. Silahkan jalankan atau buka Adminer, kemudian pilih nama database inventaris. Pada bagian bawah, silahkan klik link Create view.
Ada 2 bagian kolom yang perlu diisi untuk membuat view, yaitu kolom Name dan kolom SQL Command yang berada di bawah kolom Name. Cara penulisan nama view sama dengan aturan pembuatan nama tabel, perhatikan lagi tulisan tentang cara membuat database dan tabel.
View Barang
Sebelum membuat view, yang paling penting diperhatikan adalah cara menuliskan perintah SQL untuk membuat gabungan tabel [2]. Coba perhatikan lagi gambar relasi lojik di atas dan perhatikan juga gambar berikut ini untuk membuat view barang.
View barang ini adalah gabungan 2 tabel yaitu barang dan jenis, di mana yang akan menjadi tabel dasar dalam view ini adalah tabel barang. PERHATIKAN, dari tabel barang diambil hanya 3 field yaitu barang_id, barang_nama dan barang_keterangan. Sedangkan dari tabel jenis hanya diambil 1 field saja yaitu jenis_nama. PERHATIKAN LAGI, field yang menjadi penghubung antara tabel barang dan jenis adalah jenis_id, maka syarat agar data dari keduanya bisa digabung dengan benar adalah kesamaan isi dari field jenis_id. Jika isinya sama maka akan masuk datanya dalam view tetapi jika tidak sama maka tidak akan masuk dalam view.
Bagaimana perintah SQL untuk membuat view? Perhatikan contohnya berikut ini, untuk membuat view barang. Sebelumnya silahkan isi Name dengan view_barang.
SELECT barang.barang_id, jenis.jenis_nama, barang.barang_nama, barang.barang_keterangan FROM barang, jenis WHERE barang.jenis_id = jenis.jenis_id
Urutan dari field akan memengaruhi urutan hasil setelah view_barang selesai dibuat. Perhatikan bahwa pada bagian depan nama field ada nama tabel yang diikuti dengan tanda titik. Itu menunjukkan asal atau sumber dari field yang diambil berasal dari tabel apa. Nama tabel juga bisa dibuat dengan alias agar lebih singkat penulisannya, misalnya tabel barang menjadi b dan tabel jenis menjadi j.
Perintah SQL yang di atas bisa diganti dengan perintah berikut ini.
SELECT b.barang_id, j.jenis_nama, b.barang_nama, b.barang_keterangan FROM barang b, jenis j WHERE b.jenis_id = j.jenis_id
Silahkan klik Save [3] jika sudah selesai. Struktur dari view_barang ini akan terlihat seperti ini.
Sedangkan data hasil penggabungan akan terlihat seperti gambar berikut.
Lanjut lagi ya, kita buat view untuk inventaris.
View Inventaris
Untuk view ini, akan dibuat berupa gabungan 4 buat tabel sekaligus. Perhatikan gambar berikut ini.
Langsung saja, buat view dengan nama view_inventaris lalu ketik perintah SQL berikut dan Save. Perintah SQL saya buat dengan menggunakan alias.
SELECT i.inventaris_id, r.ruangan_nama, r.ruangan_status, j.jenis_nama, b.barang_nama, b.barang_keterangan, i.inventaris_qty FROM inventaris i, ruangan r, barang b, jenis j WHERE i.barang_id = b.barang_id AND i.ruangan_id = r.ruangan_id AND b.jenis_id = j.jenis_id
Jika berhasil, maka hasil penggabungan datanya seperti ini.
Okeeee… Demikian tutorial cara menggabung beberapa tabel dalam bentuk view. Silahkan klik nama databasenya, Anda akan melihat tampilan seperti gambar ini. Nama tabel ditampilkan tegak, sedangkan nama view ditamplkan miring (panel kiri). Demikian juga pada detail tabel ada keterangan engine sedangkan pada view hanya ada tulisan View (panel kanan).
Cukup dulu ya untuk tutorial ini, saya akan lanjutkan dengan tulisan bagaimana cara mengekspor atau impor database menggunakan Adminer. Sampai jumpa…
Gabung dalam percakapan