Event实现每日某个时刻删除事件
首先通过Navicat for MySQL查看Event事件是否开启,具体代码:
[sql] view plain copy
- show variables like '%sche%';
通常事件是开启的,如下图所示:
如果没有开启,需要数据库超级权限设置。
[sql] view plain copy
- set global event_scheduler =1;
其中event_scheduler为ON表示开启,OFF表示关闭,如下:
+-----------------+-------+
| Variable_name | Value |
+-----------------+-------+
| event_scheduler | OFF |
+-----------------+-------+
下面开始写事件进行操作。
假设现在存在一张表loginuser,包括用户名、密码、权限三个字段。如下图:
当前时间点为2017年3月9日 23:48,我们设置23:50执行删除eastmount数据操作。其中SQL语句的Event代码如下:
[sql] view plain copy
- CREATE EVENT testevent
- ON SCHEDULE EVERY 1 DAY STARTS '2017-03-09 23:50:00'
- DO
- delete from loginuser where Username='eastmount';
创建事件可以查看到的,如下图所示:
然后过了23:50执行查询语句就会发现eastmount用户已经被删除。
点开事件如下图所示,但我更推荐大家写SQL语句。