EVENT event_name [ON SCHEDULE schedule ] [ON COMPLETION [NOT] PRESERVE] [RENAME TO new_event_name ] [ENABLE | DISABLE | DISABLE ON SLAVE] [COMMENT ’ string ’] [DO event_body ] 

The ALTER EVENT  statement changes one or more of the characteristics of an existing event without the need to drop and recreate it. The syntax for each of the DEFINER , ON SCHEDULE , ON COMPLETION , COMMENT , ENABLE  / DISABLE , and DO  clauses is exactly the same as when used with CREATE EVENT . (See Section 13.1.13, “CREATE EVENT Statement” .) 

Any user can alter an event defined on a database for which that user has the EVENT  privilege. When a user executes a successful ALTER EVENT  statement, that user becomes the definer for the affected event. 

ALTER EVENT  works only with an existing event: 

mysql> ALTER EVENT no_such_event > ON SCHEDULE > EVERY ’2:3’ DAY_HOUR; ERROR 1517 (HY000): Unknown event ’no_such_event’ 

In each of the following examples, assume that the event named myevent  is defined as shown here: 

CREATE EVENT myevent ON SCHEDULE EVERY 6 HOUR COMMENT ’A sample comment.’ DO UPDATE myschema.mytable SET mycol = mycol + 1; 

The following statement changes the schedule for myevent  from once every six hours starting immediately to once every twelve hours, starting four hours from the time the statement is run: 

ALTER EVENT myevent ON SCHEDULE EVERY 12 HOUR STARTS CURRENT_TIMESTAMP + INTERVAL 4 HOUR; 

It is possible to change multiple characteristics of an event in a single statement. This example changes the SQL statement executed by myevent  to one that deletes all records from mytable ; it also changes the schedule for the event such that it executes once, one day after this ALTER EVENT  statement is run. 

ALTER EVENT myevent ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY DO TRUNCATE TABLE myschema.mytable; 

Specify the options in an ALTER EVENT  statement only for those characteristics that you want to change; omitted options keep their existing values. This includes any default values for CREATE EVENT  such as ENABLE . 

To disable myevent , use this ALTER EVENT  statement: 

ALTER EVENT myevent DISABLE; 

The ON SCHEDULE  clause may use expressions involving built-in MySQL functions and user variables to obtain any of the timestamp  or interval  values which it contains. You cannot use stored routines or loadable functions in such expressions, and you cannot use any table references; however, you can use SELECT FROM DUAL . This is true for both ALTER EVENT  and CREATE EVENT  statements. References to 

