mysql如何写事件????

mysql如何写事件????,第1张

CREATE EVENT [事件名]

ON SCHEDULE EVERY 7 WEEK STARTS

'2014-05-14 04:00:00'

ON COMPLETION PRESERVE

ENABLE

DO

[要执行的sql语句]

mysql要实现定时执行sql语句就要用到Event

具体 *** 作如下:

先看看看event 事件是否开启

show variables like '%sche%'

如没开启,则开启。需要数据库超级权限

set global event_scheduler =1

创建存储过程 update_a (注:就是你要执行的sql语句)

mysql>create procedure update_a() update a set a.y_avg=(select avg(b.youhao) from b where a.a_id=b.a_id)

创建一个定时任务:event e_updateA

mysql>create event if not exists e_updateA

->on schedule every 60 second ---设置60秒执行一次

->on schedule at date_add(now(),interval 1 minute) ---在一分钟后执行

->on completion preserve

->do call update_a()---执行update_a()存储过程

创建Event之后,sql语句就定时执行一次。

关闭事件任务

1、首先,选中一个数据库world,为了防止破坏其他的数据库表,这里新建一张数据库表t_people_info,如下图所示。

2、创建t_people_info数据库表,可以查看下表结构,使用SQL语句或直接点击进行查看表结构。

3、接着,在world数据库找到”事件“菜单项,鼠标右键”创建事件...“,如下图所示,输入事件名称,单击”创建“。

4、就会生成insert_data事件,如下图所示。

5、接着,编写insert_data事件,每10秒钟向t_people_info插入一条数据。

6、最后查看事件的状态,调用事件运行成功。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7363889.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-04
下一篇 2023-04-04

发表评论

登录后才能评论

评论列表(0条)

保存