ALTER EVENT স্টেটমেন্ট দিয়ে বিদ্যমান MySQL ইভেন্ট মডিফাই করা যায়। ইভেন্টের বিভিন্ন অ্যাট্রিবিউট পরিবর্তন করা সম্ভব। ALTER EVENT-এর সিনট্যাক্স:
ALTER EVENT event_name ON SCHEDULE schedule ON COMPLETION [NOT] PRESERVE RENAME TO new_event_name ENABLE | DISABLE DO event_body
নিচের উদাহরণ দিয়ে ব্যাখ্যা:
উদাহরণ
মান লিইয়ে একটি ইভেন্ট আছে:
mysql> Create event hello ON SCHEDULE EVERY 1 Minute DO INSERT INTO event_messages(message, generated_at) Values ('Alter event testing', NOW());
Query OK, 0 rows affected (0.00 sec)
mysql> select * from event_messages;
+----+---------------------+---------------------+
| ID | MESSAGE | Generated_at |
+----+---------------------+---------------------+
| 1 | Without Preserve | 2017-11-22 20:32:13 |
| 2 | With Preserve | 2017-11-22 20:35:12 |
| 3 | Alter event testing | 2017-11-22 21:08:37 |
+----+---------------------+---------------------+
3 rows in set (0.00 sec)
mysql> ALTER EVENT hello ON SCHEDULE EVERY 2 MINUTE;
Query OK, 0 rows affected (0.00 sec)
উপরের কোয়েরি ইভেন্টের শিডিউল ১ মিনিট থেকে ২ মিনিটに変更 করেছে। নিচের কোয়েরি ইভেন্টের বডি পরিবর্তন করবে।
mysql> ALTER EVENT hello DO INSERT INTO event_messages(message,generated_at) VALUES('ALTERED',NOW());
Query OK, 0 rows affected (0.00 sec)
mysql> select * from event_messages;
+----+---------------------+---------------------+
| ID | MESSAGE | Generated_at |
+----+---------------------+---------------------+
| 1 | Without Preserve | 2017-11-22 20:32:13 |
| 2 | With Preserve | 2017-11-22 20:35:12 |
| 3 | Alter event testing | 2017-11-22 21:08:37 |
| 4 | Alter event testing | 2017-11-22 21:09:15 |
| 5 | ALTERED | 2017-11-22 21:11:15 |
+----+---------------------+---------------------+
5 rows in set (0.00 sec)
উপরের ফলাফলে ২ মিনিট পর পরিবর্তিত মেসেজ পাওয়া গেছে।