คำถามติดแท็ก row-modification-time

2
ทริกเกอร์เป็น UPDATE หลังจาก UPDATE หรือไม่
ฉันต้องการทริกเกอร์บันทึกเวลาของการอัปเดตใด ๆ เป็น: CREATE TRIGGER col_update AFTER UPDATE ON col FOR EACH ROW BEGIN UPDATE col SET updated=NOW() WHERE id=NEW.id; // or OLD.id END ปัญหาคือเมื่อทริกเกอร์นี้พยายามอัปเดตupdatedคอลัมน์มันก็เป็นอีกเหตุการณ์หนึ่งของการอัพเดทที่รันทริกเกอร์ สิ่งนี้จะสร้างการวนซ้ำไม่สิ้นสุดซึ่งไม่ทำงาน ฉันจะจัดเก็บเวลาอัปเดตในคอลัมน์ที่เกี่ยวข้องได้อย่างไร ฉันต้องการใช้ทริกเกอร์เนื่องจากมีหลายคอลัมน์ในตาราง หากฉันพยายามตั้งเวลาอัปเดตด้วยตนเองฉันจะต้องแก้ไขข้อความค้นหาจำนวนมาก

1
วิธีสร้างทริกเกอร์ที่อัปเดตฟิลด์วันที่และฟิลด์เวลาเมื่อแก้ไขแถว
ฉันสร้างตารางtesttableภายในฐานข้อมูลtestbaseที่มีโครงสร้างต่อไปนี้: product_no (int, not null) product_name (varchar(30), not null) price (money, null) expire_date (date, null) expire_time (time(7), null) อย่างไรก็ตามฉันจะเขียนทริกเกอร์อย่างไรเพื่อให้อัปเดตแถวเฉพาะที่มีการแก้ไข (หรืออัปเดตด้วยข้อมูลใหม่) และบันทึกวันที่แก้ไขลงในexpire_dateฟิลด์และเวลาแก้ไขในexpire_timeฟิลด์ (หรือถ้าเป็นไปได้?)
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.