Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การเขียนโปรแกรม >> MySQL

ประโยชน์ของ ON COMPLETION PRESERVE ในการสร้าง MySQL Event


ปกติ event จะถูกลบอัตโนมัติเมื่อหมดอายุ (expired) และไม่แสดงใน SHOW EVENTS ใช้ ON COMPLETION PRESERVE เพื่อเก็บ event ไว้หลังรันเสร็จ ตัวอย่าง:

ตัวอย่าง

สร้าง event **ไม่มี** PRESERVE — หายจาก SHOW EVENTS หลังรัน:

mysql> CREATE EVENT testing_event_without_Preserves ON SCHEDULE AT CURRENT_TIMESTAMP DO INSERT INTO event_messages(message,generated_at) Values('Without Preserve',NOW());
Query OK, 0 rows affected (0.00 sec)
mysql> SHOW EVENTS FROM query\G
... (ไม่แสดง testing_event_without_Preserves) ...

สร้าง event **มี** PRESERVE — ยังแสดงใน SHOW EVENTS:

mysql> CREATE EVENT testing_event_with_Preserves ON SCHEDULE AT CURRENT_TIMESTAMP ON COMPLETION PRESERVE DO INSERT INTO event_messages(message,generated_at) Values('With Preserve',NOW());
Query OK, 0 rows affected (0.00 sec)
mysql> SHOW EVENTS FROM query\G
... (แสดง testing_event_with_Preserves อยู่ในรายการ Status: DISABLED) ...

Event ที่ PRESERVE จะคงอยู่ใน metadata เพื่อตรวจสอบประวัติได้