我在我的數據庫中有一個名爲log_events
的表格。在這張表中有一列叫做tags
。如果該列中的值爲「debug
」,並且其放入數據庫的日期超過30天,則應刪除該條目。我將通過cron運行腳本。請問如何使用PHP來完成這些任何想法? 感謝您的任何幫助,提前。使用cron刪除舊的數據庫行?
回答
的SQL查詢應該是這個樣子
DELETE * FROM tbl_name WHERE column_name = 'debug' and created_at < NOW() - INTERVAL 30 DAYS
您可以通過cron運行PHP腳本或者您也可以用一個簡單的bash腳本也能達到自己的目標:
#!/bin/bash
mysql -u user -pyourpassword dbname<<EOFMYSQL
DELETE FROM table WHERE tags = 'debug' AND date < DATE_SUB(NOW(), INTERVAL 30 DAYS);
EOFMYSQL
,那麼你可以調用腳本在crontab事件。
NOW函數返回這種格式'2007-12-15 23:50:26' –
@LawrenceCherone:你完全錯了。首先,它取決於調用NOW()的上下文(請參見[docs](http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html# function_now))。其次,您可以安全地將'DATE','DATETIME'或'TIMESTAMP'類型的值與'NOW()'進行比較。 – Tadeck
嗨,它是如何通過PHP完成的,你知道嗎? –
- 1. 刪除舊的1.0.1 CouchDB數據庫
- 2. Redis:刪除舊的未使用數據
- 3. 使用OleDb從數據庫刪除行
- 4. 使用jsp從數據庫刪除行
- 5. 替換刪除舊數據的數據
- 6. 刪除按鈕,刪除數據庫行
- 7. 自動刪除舊數據
- 8. 技術在Oracle中刪除舊數據的數據庫
- 9. 使用Google表單在工作表中刪除舊數據行
- 10. RestKit使用setObjectMapping從核心數據中刪除舊數據
- 11. 如何刪除MPAndroidChart中的舊數據?
- 12. 刪除Firebase中的舊數據
- 13. 刪除行從數據庫中使用PHP /庫MySQLi
- 14. 從sql數據庫中刪除。基於時間戳(cron job)?
- 15. 刪除數據庫中的行
- 16. 刪除Informix數據庫中的行
- 17. 刪除數據庫中的特定行
- 18. 刪除/刪除Teradata中的數據庫
- 19. 刪除sqlite數據庫中的舊記錄android
- 20. 關於從數據庫中刪除舊記錄的問題
- 21. 從數據庫中刪除最舊的記錄
- 22. 使用ADO.NET刪除數據庫條目
- 23. 使用JS刪除數據庫條目
- 24. 刪除數據庫
- 25. 使用php刪除我的數據庫中的行pdo
- 26. 使用基於日期的shell腳本刪除舊數據
- 27. R數據:使用NA刪除行並沒有刪除行
- 28. 使用jpa刪除數據庫中的行
- 29. 使用python燒瓶刪除數據庫中的行?
- 30. 使用jsp與確認風刪除數據庫中的一行
你有什麼這麼遠嗎?你以前在PHP中編寫過一個MySQL驅動的應用程序嗎? –
日期格式如何? –
您能否更具體地指出您在PHP代碼中遇到問題,運行cron或SQL查詢? – greenLizard