加入收藏 | 设为首页 | 会员中心 | 我要投稿 拼字网 - 核心网 (https://www.hexinwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql event创立模板

发布时间:2022-04-08 16:41:25 所属栏目:MySql教程 来源:互联网
导读:mysql event建立模板: 建立履历记录表 CREATE TABLE `mysql`.`t_event_history` ( `dbname` VARCHAR(128) NOT NULL DEFAULT , `eventname` VARCHAR(128) NOT NULL DEFAULT , `starttime` DATETIME NOT NULL DEFAULT 0000-00-00 00:00:00, `endtime` DATETIM
       mysql event建立模板:

      建立履历记录表
CREATE TABLE `mysql`.`t_event_history` (
  `dbname` VARCHAR(128) NOT NULL DEFAULT '',
  `eventname` VARCHAR(128) NOT NULL DEFAULT '',
  `starttime` DATETIME NOT NULL DEFAULT '0000-00-00 00:00:00',
  `endtime` DATETIME DEFAULT NULL,
  `issuccess` INT(11) DEFAULT NULL,
  `duration` INT(11) DEFAULT NULL,
  `errormessage` VARCHAR(512) DEFAULT NULL,
  `randno` INT(11) DEFAULT NULL,
  PRIMARY KEY (`dbname`,`eventname`,`starttime`),
  KEY `ix_endtime` (`endtime`),
  KEY `ix_starttime_randno` (`starttime`,`randno`)
) ENGINE=INNODB DEFAULT CHARSET=utf8;
2.event 建立模板
 
DELIMITER $$
CREATE DEFINER=`root`@`localhost` EVENT `job_update_status` ON SCHEDULE
#修改以下调度信息
EVERY 5 minute STARTS now() ON COMPLETION PRESERVE ENABLE DO
BEGIN
DECLARE r_code CHAR(5) DEFAULT '00000';
DECLARE r_msg TEXT;
DECLARE v_error INTEGER;
DECLARE v_starttime DATETIME DEFAULT NOW();
DECLARE v_randno INTEGER DEFAULT FLOOR(RAND()*100001);

INSERT INTO mysql.t_event_history (dbname,eventname,starttime,randno)
#修改下面的作业名(该作业的名称)
VALUES(DATABASE(),'job_update_status', v_starttime,v_randno);
 

UPDATE mysql.t_event_history SET endtime=NOW(),issuccess=ISNULL(v_error),duration=TIMESTAMPDIFF(SECOND,starttime,NOW()), errormessage=CONCAT('error=',r_code,', message=',r_msg),randno=NULL WHERE starttime=v_starttime AND randno=v_randno;

END$$
DELIMITER ;
 查询event
 
select * from mysql.event;

(编辑:拼字网 - 核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!