在MySQL中,事件(Event)是一种被预定的任务或者动作,可以自动或手动执行。一旦某个事件被创建,它会按照指定的调度规则周期性地自动执行。此外,我们也可以手动运行某个事件。
-- 创建一个事件
CREATE EVENT myevent
ON SCHEDULE EVERY 1 HOUR
DO
BEGIN
SELECT 'Hello, World!';
END;
-- 查看已有的事件
SHOW EVENTS;
-- 手动运行某个事件
ALTER EVENT myevent
ON COMPLETION PRESERVE
DO
BEGIN
SELECT 'RUNNING myevent';
CALL my_stored_proc();
END;
-- 删除一个事件
DROP EVENT myevent;
在进行手动运行事件时,我们需要通过ALTER EVENT命令对事件进行修改,并在其中添加手动执行的代码块。我们可以在代码块中执行任意的SQL语句或存储过程。如果不需要手动执行事件,我们也可以使用DROP EVENT命令将其删除。