你是否对获得一个mysql事件的实际操作感到十分头疼?如果是这样子的话,以下的文章将会给你相应的解决方案,以下的文章主要是介绍获得一个mysql事件的方案,以下就是相关内容的具体描述。
操作系统中的计划任务(windows)或crontabl(linux/unix)
mysql版本5.1以上,create event
create [definer = { user | current_user }] event [if not exists] event_name on schedule schedule [on completion [not] preserve] [enable | disable | disable on slave] [comment 'comment'] do sql_statement; schedule: at timestamp [+ interval interval] ... | every interval [starts timestamp [+ interval interval] ...] [ends timestamp [+ interval interval] ...] interval: quantity {year | quarter | month | day | hour | minute | week | second | year_month | day_hour | day_minute | day_second | hour_minute | hour_second | minute_second} mysql> select now(); +---------------------+ | now() | +---------------------+ | 2006-02-10 23:59:01 | +---------------------+ 1 row in set (0.04 sec) mysql> create event e_totals -> on schedule at '2006-02-10 23:59:00' -> do insert into test.totals values (now()); query ok, 0 rows affected, 1 warning (0.00 sec) mysql> show warnings\g *************************** 1. row *************************** level: note code: 1588 message: event execution time is in the past and on completion not preserve is set. the event was dropped immediately after creation. create event
mysql事件中定时delete
mysql> create event e_totals -> on schedule at '2006-02-10 23:59:00' -> do insert into test.totals values (now()); query ok, 0 rows affected, 1 warning (0.00 sec) mysql> create event -> event_name -> on schedule every 1 day starts '2009-09-20 23:40:00' -> do delete from t2; query ok, 0 rows affected (0.14 sec)
这个建议用mysql本上的event来实现; 也可以用操作系统的计划任务来处理; 或自己写个程序用定时器来触发。以上的相关内容就是对一个mysql事件的介绍,望你能有所收获。
