簡體   English   中英

如何自動更新數據庫中的記錄?

[英]How to auto update a record in database?

我有一個作業表,在其中插入新的作業。 該表還包含職位發布日期。

默認情況下,新插入時作業狀態為打開。

現在,我想在作業超過30天時將作業的狀態從打開更改為關閉。

我該怎么做?

嘗試創建一個每天運行的活動,如下所示

CREATE EVENT myevent
  ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 DAY
  DO
    UPDATE my_table SET status ='closed'
    WHERE post_date > DATE_ADD(now(), INTERVAL -30 DAY)
    AND status='open'

-更新更改的語法

  CREATE EVENT myevent
  ON SCHEDULE EVERY 24 HOUR
  DO
    UPDATE my_table SET status ='closed'
    WHERE post_date > DATE_ADD(now(), INTERVAL -30 DAY)
    AND status='open'

使用cron作業來處理此問題。 http://en.wikipedia.org/wiki/Cron

如果您不能處理老兄,您可以做一個“窮人的老兄”。 表示當有人訪問您的頁面時會執行更新所有作業記錄的實際過程(在上次運行時會進行其他檢查)。 如果您這樣做是“可憐的”方式,我建議您關閉另一個線程以使您的網站負責。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM