如何刪除超過30天的mysql記錄?我的代碼將刪除所有記錄,甚至是昨天插入的記錄。刪除30天以前的mysql記錄
require('../conn_db.php');
mysql_select_db("my_news",$conn);
mysql_query("SET NAMES utf8");
mysql_query("DELETE FROM my_news WHERE date < DATE_SUB(NOW(), INTERVAL 1 MONTH)");
mysql_close("my_news");
和MySQL表
date int(10)
95600
1322107200
...
1328288400
1328290440
告訴你什麼看起來不錯,但不應該在所有的工作:因爲'date'是保留字應該拋出一個語法錯誤。你確定你正在查詢正確的查詢 – 2012-03-16 09:46:03
使用'SET NAMES'正是爲什麼'mysql_real_escape_string()'不安全。改用['mysql_set_charset()'](http://php.net/manual/en/function.mysql-set-charset.php)。 – DaveRandom 2012-03-16 09:47:10
是否有理由使用int而不是date數據類型來存儲日期? – JJJ 2012-03-16 09:47:41