数据插入不覆盖更新,设置定时任务

Posted liquan-anran

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据插入不覆盖更新,设置定时任务相关的知识,希望对你有一定的参考价值。

数据插入不覆盖更新
INSERT INTO user_role(
user_id,
role_id,
type,
is_del
)SELECT
zgh as user_id,
126 as role_id,
2 as type,
0 as is_del
FROM sugon_jzg_jbxx b
where not exists (select 1 from user_role a where a.user_id=b.zgh)
 
查看event是否开启
show variables like ‘%sche%‘;
 
将事件计划开启
set global event_scheduler=1;
 
创建存储过程add_user_role
CREATE PROCEDURE add_user_role()
BEGIN
INSERT INTO user_role(
user_id,
role_id,
type,
is_del
)SELECT
zgh as user_id,
126 as role_id,
2 as type,
0 as is_del
FROM sugon_jzg_jbxx b
where not exists (select 1 from user_role a where a.user_id=b.zgh);
END;
 
每天定时执行任务,设置第一次执行时间为‘2018-11-15 03:00:00‘,并且每天执行一次
create event if not exists e_add_user_role
on schedule every 1 day starts ‘2018-11-15 03:00:00‘
do call add_user_role();
 
查询任务
select * from mysql.event
 
关闭事件任务
alter event e_add_user_role ON COMPLETION PRESERVE DISABLE;
 
开启事件任务
alter event e_add_user_role ON COMPLETION PRESERVE ENABLE;
 
删除任务计划
drop event if exists e_add_user_role;
 
 

以上是关于数据插入不覆盖更新,设置定时任务的主要内容,如果未能解决你的问题,请参考以下文章

ORACLE的user_jobs定时任务创建,user_jobs定时任务不执行,

crontab设置定时更新数据库

Quartz+Spring Boot实现动态管理定时任务

Jinkins定时任务设置

oracle数据库定时任务

Linux定时任务