当前位置: 代码迷 >> MySQL >> MySQL事件触发器-好文推荐
  详细解决方案

MySQL事件触发器-好文推荐

热度:211   发布时间:2016-05-05 17:10:38.0
MySQL事件触发器--好文推荐

感谢?lxgwm2008?对MySQL之Event的分享,特此收藏,?查看文章; 最近工作正好需要用到这样的需求.?

以下是简单应用

?

-- 查询事件触发器开关-- SHOW VARIABLES LIKE 'event_sc%';-- 打开触发器开关SET GLOBAL event_scheduler = 1;-- 测试存储过程DROP PROCEDURE IF EXISTS `up_report_proc_4_event`;CREATE PROCEDURE up_report_proc_4_event ()BEGIN	-- **************************************** --	-- ********* 要执行的语句内容 ************* --	-- **************************************** --	-- 表结构	-- DROP TABLE IF EXISTS `t_event_test`;	-- CREATE TABLE `t_event_test` (	-- 	`id` int(11) NOT NULL AUTO_INCREMENT,	-- 	`val` varchar(100) NOT NULL,	-- 	PRIMARY KEY (`id`)	-- ) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;	INSERT INTO 	VALUES		(NULL, NOW());END;-- 触发器, 每隔5秒执行一次存储过程 `up_report_proc_4_event`DROP EVENT IF EXISTS up_report_proc_4_event;CREATE EVENT up_report_proc_4_event ON SCHEDULE EVERY 5 SECOND ON COMPLETION PRESERVE DO	CALL up_report_proc_4_event ();-- 将事件调度器为用户授权-- root 用户名-- iwifi 目标数据库GRANT EVENT ON iwifi.* TO root;-- 开启事件ALTER EVENT up_report_proc_4_event ON COMPLETION PRESERVE ENABLE;-- ----------------------------------------------------------- 查询触发器信息SELECT	* 	-- 	e.LAST_ALTERED,	-- 	e.LAST_EXECUTEDFROM	INFORMATION_SCHEMA. EVENTS eWHERE	EVENT_NAME = 'up_report_proc_4_event';

?

  相关解决方案