close

Ticker

6/recent/ticker-posts

Trigger Mysql Untuk Update Jumlah Stok Pada Database

Selamat pagi pembaca yang kurang setia. Pagi ini saya berusaha menghilangkan bermacam macam kegalauan saya dengan membuat postingan satu ini ( Eh kok curhat). Maaf sebelumnya saya sudah jarang update blog ini dikarenakan berbagai macam kendala.

Kebetulan saya dapat kerjaan sedikit dari dosen (Daripada nganggur) untuk membuat aplikasi peminjaman buku berbasis web, dan seperti biasa ketika saya menulis di blog ini saya mempunyai masalah sebelumnya dan ketika saya menemukan solusi dari masalah yang dialami saya berusaha membagi masalah beserta solusinya di blog ini dan semoga masalah yang menimpa saya akan menimpa anda juga AMIN, jangan takut kan saya kasih solusinya.

Permasalahan yang saya hadapi ketika membuat aplikasi peminjaman buku ini ketika program diharuskan untuk menampilkan jumlah stok buku yang tersedia ketika buku tersebut dipinjam dan dikembalikan jadi gini rumusan masalah nya

saya akan mencoba jadi guru matematika SD

Ketika buku dipinjam : 
Stok buku - Buku yang dipinjam = Stok buku sekarang

Ketika buku dikembalikan :
Stok buku + Buku yang dipinjam = Stok buku sekarang

Program yang saya buat ini hampir sama fungsinya dengan program stok barang atau program kasir atau program stok pacar atau program stok mantan dan program stok gebetan eh salah salah LUPAKAN !

Sekarang serius ! saya akan jelaskan sedikit tentang trigger dengan bahasa saya yang tidak ilmiah. Trigger merupakan salah satu fungsi dari perintah mysql yang akan bekerja menjalankan query yang diinginkan pada tabel-tabel yang ada pada database ketika menangkap kejadian penambahan atau perubahan dari value atau isi pada tabel. Kejadian yang ditangkap oleh trigger pada tabel adalah sebagai berikut :
ketika setelah atau sebelum isi tabel di insert
ketika setelah atau sebelum isi tabel di update
ketika setelah atau sebelum isi tabel di delete

A. Keterangan Tabel Yang Digunakan

Langsung aja ya saya beri contoh untuk praktiknya, disini saya punya dua tiga (3) tabel 
1. tabel stok
2. tabel pinjam
3. tabel kembali

  • Keterangan Tabael Stok


Terdapat beberapa field pada tabel stok dan field stok_buku yang akan mengalami perubahan Value atau isi sesuai dengan kondisi saat buku dipinjam atau dikembalikan (akan berinteraksi dengan tabel pinjam dan tabel kembali)

  • Keterangan Tabel Pinjam


Pada tabel pinjam terdapat field qty dengan value bawaan atau default value nya adalah 1. Hal ini saya set supaya anggota perpustakaan melakukan peminjaman buku hanya dapat meminjam satu buku untuk satu judul buku. Dan field qty akan berinteraksi dengan field stok_buku pada tabel stok untuk menampilkan ketersediaan stok buku dengan cara :
stok_buku - qty untuk mencari ketersediaan stok buku setelah buku dipinjam

  • Keterangan Tabel Kembali


pada tabel kembali terdapat field qty sama seperti tabel pinjam yang akan berinteraksi dengan field stok_buku pada tabel stok dan yang fungsinya untuk menampilkan ketersediaan stok buku ketika buku yang dipinjam dikembalikan untuk menampilkan ketersediaan stok buku setelah buku dikembalikan caranya seperti berikut :
stok_buku + qty untuk mencari ketersediaan stok buku setelah buku dikembalikan

B. Trigger Yang Digunakan
  • Trigger Pinjam Buku
Pada saat buku dipinjam operator harus memasukkan data ke dalam tabel pinjam. Pada situasi seperti ini saya akan menggunakan trigger dengan metode after insert pada tabel pinjam. Ketika tabel pinjam di isi dengan data peminjam maka akan terjadi proses pengurangan stok buku pada tabel stok.
1. Klik tabel pinjam.
2. Klik tab trigger
3. Masukkan kode seperti gambar berikut


  • Trigger Kembalikan Buku
Ada dua metode trigger yang akan digunakan saat buku dikembalikan :
1. Metode after delete pada tabel pinjam ketika data buku yang dipinjam dihapus dari tabel pinjam dan akan mengisi field tabel kembali secara otomatis.
2. Metode after insert pada tabel kembali ketika data pada tabel kembali terisi secara otomatis saat isi dari tabel pinjam dihapus, maka field kty pada tabel stok akan ditambah sesuai dengan kode buku yang dikembalikan.

After delete pada tabel pinjam

After insert pada tabel kembali

C. Pengujian 

Isi field stok_buku pada tabel stok sebelum tabel pinjam di isi stok buku ada 5.


Kemudian tabel pinjam diisi dengan qty 1 dan stok buku berkurang menjadi 4


Ketika isi tabel pinjam dihapus tabel kembali terisi dengan qty bernilai 1 dan jumlah stok buku bertambah menjadi 5

Sudah dulu ya sekian catatan yang saya berikan ini semoga ada manfaatnya. Sudah ninggalin jam kerja lhoo buat nulis yang beginian semoga manfaat nya berasa

Posting Komentar

3 Komentar

  1. utk gambar after delete pada tabel pinjam trigger kembali buku SAMA DENGAN gambar after insert pada trigger pinjam buku

    BalasHapus