java - mysql隔天自動(dòng)刪除數(shù)據(jù)
問題描述
mysql怎么在規(guī)定時(shí)間之后自動(dòng)刪除數(shù)據(jù)
我在用java做一個(gè)待辦事項(xiàng),用mysql做數(shù)據(jù)庫想實(shí)現(xiàn)第二天自動(dòng)刪除已完成的行
補(bǔ)充
根據(jù)我設(shè)置的時(shí)間戳跟當(dāng)前時(shí)間進(jìn)行比較,再進(jìn)行刪除因?yàn)槲沂怯胹e,數(shù)據(jù)庫用時(shí)才開的
很抱歉,沒有寫清楚問題。
問題解答
回答1:可以給mysql建個(gè)定時(shí)任務(wù)
一、查看event是否開啟
show variables like ’%sche%’;
開啟event_scheduler
set global event_scheduler =1;
二、創(chuàng)建存儲(chǔ)過程test
CREATE PROCEDURE test () BEGIN update userinfo set endtime = now() where id = ’110’; END;
三、創(chuàng)建event e_test
create event if not exists e_test on schedule every 30 second on completion preserve do call test();
每隔30秒將執(zhí)行存儲(chǔ)過程test
關(guān)閉事件任務(wù)
alter event e_test ON COMPLETION PRESERVE DISABLE;
開戶事件任務(wù)
alter event e_test ON COMPLETION PRESERVE ENABLE; 回答2:
這個(gè)邏輯交給java處理更好。
回答3:使用Java定時(shí)任務(wù).
import java.util.Timer;import java.util.TimerTask;回答4:
用java解決 @schedule(cron = '0 0 0 * ?' ) 每天零點(diǎn)執(zhí)行一次定時(shí)任務(wù)上面0和星號(hào)之間少了一個(gè)星號(hào),連打兩個(gè)星號(hào)會(huì)被屏蔽
回答5:我傾向于用腳本去操作,但是mysql也提供了自身的存貯過程,其本質(zhì)也是些簡單的mysql語句去執(zhí)行的。
我在網(wǎng)上查了 存儲(chǔ)過程的優(yōu)缺點(diǎn),然后你想想腳本的優(yōu)缺點(diǎn),用哪種方式,自行選擇吧!存儲(chǔ)過程優(yōu)缺點(diǎn)
回答6:1.mysql自己的任務(wù)調(diào)度Event2.java 應(yīng)用層的任務(wù)調(diào)度,推薦QuartZ3.寫腳本,Node,python均可,利用操作系統(tǒng)的任務(wù)調(diào)度
回答7:試一下quartz,不知道對(duì)你是不是有幫助
相關(guān)文章:
1. javascript - sublime快鍵鍵問題2. javascript - 移動(dòng)端上不能實(shí)現(xiàn)拖拽布局嗎?3. 實(shí)現(xiàn)bing搜索工具urlAPI提交4. boot2docker無法啟動(dòng)5. thinkPHP5中獲取數(shù)據(jù)庫數(shù)據(jù)后默認(rèn)選中下拉框的值,傳遞到后臺(tái)消失不見。有圖有代碼,希望有人幫忙6. 前端 - 這段代碼一直生效不了,查半天因?yàn)?top: 0px; 分號(hào)后一個(gè)隱藏的東西,也不是占位符...刪了就可以生效,這是什么情況。。7. javascript - react native在run-android時(shí)出現(xiàn)這個(gè)錯(cuò)誤該怎么解決?大神賜教8. c++ - QWebEngineView加載url后直接點(diǎn)擊鏈接沒有反應(yīng)要怎么解決?9. javascript - 如何判斷不同兩個(gè)對(duì)象觸發(fā)同一事件?10. angular.js - 單頁應(yīng)用(ng/vue)該如何監(jiān)聽用戶離開當(dāng)前頁面(或者路由)?

網(wǎng)公網(wǎng)安備