MySQL任务调度和存储过程实现实时修改表中字段值
来源:互联网 发布:数据挖掘 十大算法 bp 编辑:程序博客网 时间:2024/06/01 10:04
CREATE TABLE `zf_activity` (
`ACTIVITY_ID` int(11) NOT NULL AUTO_INCREMENT,
`ZF_USER_ID` int(11) DEFAULT NULL COMMENT '活动发起人|2|2|1|1',
`AGENCY_ID` int(11) DEFAULT NULL COMMENT '单位ID|2|2|1|1',
`TITLE` varchar(150) NOT NULL COMMENT '标题|1|2|1|1',
`KEYWORDS` varchar(500) NOT NULL COMMENT '关键字|2|2|1|1',
`DESCRI` varchar(500) DEFAULT NULL COMMENT '描述|2|2|10|2',
`VIDEO_ID` int(11) DEFAULT NULL COMMENT '视频|2|2|13|2',
`CONTENT` text COMMENT '内容|2|2|11|1',
`THUMB` varchar(255) DEFAULT NULL COMMENT '海报|2|2|12|2',
`AREA` varchar(255) DEFAULT NULL COMMENT '区域|2|2|5|1',
`MAP_INFO` varchar(50) DEFAULT NULL COMMENT '信息|2|2|1|2',
`LINK_MAN` varchar(50) DEFAULT NULL COMMENT '联系人|2|2|1|1',
`TEL` varchar(50) DEFAULT NULL COMMENT '联系电话|2|2|1|1',
`DETAIL_ADDRESS` varchar(255) DEFAULT NULL COMMENT '详细地址|2|2|1|2',
`FEE` decimal(11,2) NOT NULL DEFAULT '0.00' COMMENT '费用|2|2|3|1',
`START_TIME` datetime NOT NULL COMMENT '开始时间|2|2|4|1',
`END_TIME` datetime NOT NULL COMMENT '结束时间|2|2|4|1',
`ADD_TIME` datetime DEFAULT NULL COMMENT '添加时间|2|2|4|2',
`PUBLISH_TIME` datetime DEFAULT NULL COMMENT '发布时间|2|2|4|2',
`ACTIVITY_TYPE` int(11) DEFAULT NULL COMMENT '活动类型ID|2|2|1|1',
`ACTIVITY_LINK` varchar(1000) DEFAULT NULL COMMENT '活动链接|2|2|1|2',
`VISTIS_COUNT` int(11) NOT NULL DEFAULT '0' COMMENT '访问人数|2|2|1|2',
`LIKE_COUNT` int(11) NOT NULL DEFAULT '0' COMMENT '喜欢人数|2|2|1|2',
`ENROL_COUNT` int(11) NOT NULL DEFAULT '0' COMMENT '报名人数|2|2|1|2',
`COMMENT_COUNT` int(11) NOT NULL DEFAULT '0',
`COLLECTION_COUNT` int(11) NOT NULL DEFAULT '0',
`TOP_MARK` tinyint(1) NOT NULL DEFAULT '0' COMMENT '置顶|2|2|6|1',
`TOP_EXPIRE` datetime DEFAULT NULL COMMENT '置顶有效期|2|2|4|2',
`PUBLISH_STATUS` char(1) NOT NULL DEFAULT '0' COMMENT '发布状态|2|2|1|2',
`STATUS` tinyint(1) NOT NULL DEFAULT '0' COMMENT '活动状态|2|2|1|2',
`IS_OPEN_COMMENT` char(1) NOT NULL DEFAULT 'Y' COMMENT '是否开启评论|2|2|6|1',
`IS_OPEN_ENROL` char(1) NOT NULL DEFAULT 'Y' COMMENT '是否开启报名|2|2|6|1',
`IS_DEL` char(1) NOT NULL DEFAULT 'N',
PRIMARY KEY (`ACTIVITY_ID`),
KEY `ZF_USER_ID` (`ZF_USER_ID`),
KEY `AGENCY_ID` (`AGENCY_ID`)
) ENGINE=InnoDB AUTO_INCREMENT=18 DEFAULT CHARSET=utf8;
DELIMITER $$
USE `wqd_zw_platform`$$
DROP PROCEDURE IF EXISTS `update_activity_state`$$
CREATE DEFINER=`root`@`localhost` PROCEDURE `update_activity_state`()
BEGIN
-- 声明临时变量
DECLARE pkd INT;
-- 声明游标结束标志
DECLARE done INT DEFAULT FALSE;
-- 声明游标
DECLARE cur CURSOR FOR SELECT zf_activity.ACTIVITY_ID FROM zf_activity WHERE zf_activity.STATUS=0 AND zf_activity.PUBLISH_STATUS=1 AND zf_activity.IS_DEL='N' AND zf_activity.END_TIME<SYSDATE();
-- 游标循环到最后,将游标标志置为true
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = TRUE;
-- 打开游标执行
OPEN cur;
-- 遍历游标每一行
REPEAT
-- 把每一行的游标值存储到变量中
FETCH cur INTO pkd;
-- 如果游标循环没有结束,执行then后面的语句
IF NOT done THEN
UPDATE zf_activity SET zf_activity.STATUS=1 WHERE zf_activity.ACTIVITY_ID=pkd;
END IF;
UNTIL done END REPEAT;
CLOSE cur;
END$$
DELIMITER ;
4、开启任务调度DELIMITER $$
ALTER DEFINER=`root`@`localhost` EVENT `wqd_task` ON SCHEDULE EVERY 10 SECOND STARTS '2017-03-15 16:54:26' ON COMPLETION NOT PRESERVE ENABLE DO CALL update_activity_state$$
DELIMITER ;
SET GLOBAL event_scheduler = ON;
- MySQL任务调度和存储过程实现实时修改表中字段值
- 存储过程批量修改表中字段值
- 表修改字段存储过程
- Mysql 批量修改字段存储过程
- mysql使用存储过程和事件实现定时任务
- MYSQL的基本使用【表的创建和修改、视图、函数、存储过程、触发器和事件调度器】
- mysql通过job任务调度(event)执行存储过程
- MySQL事件调度和存储过程
- MySQL存储过程和事件调度
- 添加表、字段、存储过程、定时任务
- Springmvc中配置Quartz,实现任务实时调度
- 在SQL Server中修改字段类型和字段名称的存储过程
- MySQL 表添加字段 存储过程实现 IF NOT EXISTS
- MySql 定时任务和存储过程,每月创建一张表
- 浅谈实时操作系统任务管理 和 调度
- mysql 事件调度存储过程
- 补MySQL第六天----Java中实现预处理、批处理、大数据字段与存储过程
- mysql存储过程和函数,事件调度器
- pager-taglib2.0中文传参乱码问题
- javascript 截取字符串
- js 文章、通知、公告、新闻等发布时间计算
- MySQL任务调度
- MySQL存储过程
- MySQL任务调度和存储过程实现实时修改表中字段值
- tomcat作为windows服务自动启动问题
- Mongo查询
- 新手python成长过程
- appcan执行窗口事件
- async.js 实现js函数执行顺序
- jquery.lazyload.js 实现图片懒加载
- 常用自定义正则验证
- JavaScript 保留两位小数 不四舍五入 -- 整理之前的老代码看到的不错的逻辑