Trigger mengurangi stok ketika data diupdate

permisi suhu, saya punya table barang dan tabel detil penjualan barang, ketika saya insert ke tabel detil, stok di table barang sudah berhasil berkurang,

Permasalahnnya! ketika saya insert baru ke tabel detil penjualan barang dengan kode barang yg sama maka kondisinya akan menjadi update. dan hanya stok saja yg terupdate.

tetapi stok di table barang tidak berkurang, saya pengennya ketik diinput kembali dengan kode barang yg sama, maka stok di table barang akan berkurang kembali.

berikut script trigger yg sudah ane coba.

  CREATE TRIGGER update_stok after UPDATE ON table_detail_penjualan
 FOR EACH ROW BEGIN
 UPDATE m_barang
 SET jumlah_barang = jumlah_barang - 1
 WHERE
 kd_barang = NEW.kd_barang;
 END

skrip diatas sudah berhasil, tetapi ketika ada kondisi update di table detil penjualan seperti refresh, maka stok barang di tabel barang malah ikut ke update.

contoh skrip update yg ane coba :

 if(isset($_POST['refresh'])){
							  $update = mysql_query("UPDATE table_detail_penjualan SET status = '2' WHERE user_input = '".$_SESSION['user_input']."' AND status <> '3'");
								 if($update){
							   echo "<script>;alert('Refresh Berhasil');document.location.href='index.php';</script>";
							  }
							}
avatar 4key
@4key

70 Kontribusi 2 Poin

Diperbarui 7 tahun yang lalu

1 Jawaban:

Bagaimana kalau pakai if sebelum update tbl m_barang. Jadi kolom jumlah_barang di tbl m_barang cuma ditambah kalau kondisi update di tbl table_detail_penjualan sesuai.

avatar devio
@devio

101 Kontribusi 46 Poin

Dipost 7 tahun yang lalu

Login untuk ikut Jawaban