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) উপরের প্রশ্নটি ইভেন্টের সময়সূচীকে 1 মিনিট থেকে 2 মিনিটের মধ্যে পরিবর্তন করবে৷ এবং নীচের প্রশ্নটি ইভেন্টের মূল অংশকে পরিবর্তন করবে৷
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) উপরের ফলাফল সেট দেখায় যে আমরা 2 মিনিট পরে পরিবর্তিত বার্তা পেয়েছি৷