java - MySQL löscht Daten automatisch jeden zweiten Tag
过去多啦不再A梦
过去多啦不再A梦 2017-06-16 09:19:28
0
7
1129

mysqlSo löschen Sie Daten automatisch nach einer bestimmten Zeit

Ich verwende java, um eine To-Do-Liste zu erstellen und java做一个待办事项,用mysqlum eine Datenbank zu erstellen
Ich möchte abgeschlossene Zeilen am nächsten Tag automatisch löschen

Ergänzung

Vergleichen Sie den von mir festgelegten Zeitstempel mit der aktuellen Zeit und löschen Sie ihn dann.
Da ich se verwende, wird die Datenbank nur geöffnet, wenn sie verwendet wird.

Entschuldigung, ich habe die Frage nicht klar formuliert.

过去多啦不再A梦
过去多啦不再A梦

Antworte allen(7)
迷茫

可以给mysql建个定时任务

一、查看event是否开启

show variables like '%sche%'; 

开启event_scheduler

set global event_scheduler =1;  

二、创建存储过程test

CREATE PROCEDURE test ()  
BEGIN  
update userinfo set endtime = now() where id = '110';  
END;  

三、创建event e_test

create event if not exists e_test  
on schedule every 30 second  
on completion preserve  
do call test();  

每隔30秒将执行存储过程test

关闭事件任务

alter event e_test ON COMPLETION PRESERVE DISABLE;  

开户事件任务

alter event e_test ON COMPLETION PRESERVE ENABLE;  
左手右手慢动作

这个逻辑交给java处理更好。

小葫芦

使用Java定时任务.

import java.util.Timer;
import java.util.TimerTask;
Ty80

用java解决
@schedule(cron = "0 0 0 * ?" ) 每天零点执行一次定时任务
上面0和星号之间少了一个星号,连打两个星号会被屏蔽

世界只因有你

我倾向于用脚本去操作,但是mysql也提供了自身的存贮过程,其本质也是些简单的mysql语句去执行的。

我在网上查了 存储过程的优缺点,然后你想想脚本的优缺点,用哪种方式,自行选择吧!
存储过程优缺点

洪涛

1.mysql自己的任务调度Event
2.java 应用层的任务调度,推荐QuartZ
3.写脚本,Node,python均可,利用操作系统的任务调度

刘奇

试一下quartz,不知道对你是不是有帮助

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage