mysql資料庫中定時刪除

coldplay.xixi
發布: 2020-10-19 10:59:06
原創
6648 人瀏覽過

mysql資料庫中設定定時刪除的方法:先開啟mysql檔;然後設定刪除三天前的數據,程式碼為【DELETE FROM table WHERE created_on

mysql資料庫中定時刪除

相關免費學習推薦:mysql資料庫(影片)

mysql資料庫中設定定時刪除的方法:

刪除三天前的資料的sql

DELETE FROM table WHERE created_on < DATE_SUB(CURDATE(),INTERVAL 3 DAY);
登入後複製
  • CURDATE() 回傳目前日期

  • #CURNOW() 傳回目前datetime

  • INTERVAL 是mysql間隔值,用法為INTERVAL expr unit。 INTERVAL 3 DAY表示三天的間隔

  • DATE_SUB(start_date,INTERVAL expr unit);

寫一個儲存過程

預存程序相當於mysql的函數,它是儲存在資料庫伺服器中的一組sql語句,透過呼叫這個函數的名稱來執行這些sql語句指令。

DELIMITER // 
create procedure del_data()
BEGIN
DELETE FROM table WHERE created_on < DATE_SUB(CURDATE(),INTERVAL 3 DAY);
END//
DELIMITER ;
登入後複製
  • DELIMITER是分割符的意思,宣告在儲存程序前將"//"宣告為分隔符,這樣儲存過程中的「;」才不會被當作分隔符處理。聲明結束後再還原分隔符號。

  • 預存程序也可以帶參數,預存程序名(參數)

  • #在宣告儲存程序前要先用use database_name切換到想要套用的資料庫,否則預存程序會套用到預設資料庫

檢視以及使用預存程序

檢視預存程序

select * from mysql.proc where db=’数据库名’;
登入後複製

使用預存程序

call del_data()
登入後複製

寫一個事件

開啟事件調度器

SET GLOBAL event_scheduler = ON;
登入後複製

建立事件

create event del_event  
on schedule 
EVERY 1 day  
STARTS &#39;2019-3-28 00:00:00&#39;  
do call del_data()
登入後複製

以上是mysql資料庫中定時刪除的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板