如果我想删除某个事件,我需要查询类似于"DROP EVENT IF EXISTS eventname"
的语句。
但我找不到一次性删除所有事件的命令,必须一个一个地删除事件。
是否有一种SQL可以一次性删除所有事件?
"DROP EVENT IF EXISTS (SELECT EVENT_NAME FROM information_schema.EVENTS)"
也不起作用。
示例一:
DELETE FROM mysql.event
WHERE db = 'myschema'
AND definer = 'jon@ghidora'
AND name = 'e_insert';
https://dev.mysql.com/doc/refman/5.1/en/events-privileges.html
如果您可以使用DROP EVENT IF EXISTS
删除事件,并以新的计划时间重新添加它。
要永久删除事件,您可以使用 DROP EVENT
:
DROP EVENT [IF EXISTS] event_name
构建一个拖放事件查询,您可以执行以下操作:
select concat('drop event if exists ', event_name, ';') from information_schema.events;
我认为您需要使用INFORMATION_SCHEMA.EVENTS
表来收集所有活动事件,然后构建并运行DROP EVENT语句。
EVENT_NAME
FROMinformation_schema
.EVENTS
”结合起来。 - Yellove