2015-04-03 61 views
0

我有一個PHP/MySQL項目有15個表。表名tbl_user_log之一,其中所有的用戶日誌將被保存。我想每3個月清空或截斷這張表。如何使用觸發器來做到這一點,或者任何解決方案都適用。如何在MySQL中每3個月自動截斷表?

+2

[MySQL中自動截斷表]的可能重複( http://stackoverflow.com/questions/21956291/automatic-truncate-table-in-mysql) – Martin 2015-04-03 05:31:29

+0

哦!感謝Martin – 2015-04-03 05:42:37

回答

0

可以一個cronjob設置爲你的項目一定的航線上執行SQL語句:

DELETE FROM tbl_user_log 

看到這個網站:http://setcronjob.com

或者你可以簡單地使用MySQL的事件。

0

它可以幫助你

declare @tbl nvarchar(max)='table_name' 
if (
     (select create_date FROM 
     sys.tables where [email protected]) 
     <= (SELECT DATEADD(month,-3, GETDATE())) 
begin 
truncate table @tbl 
end 
else 
select 'table creation date is not more than 3 months' 

更好的,你可以把這個過程和u可以直接傳遞表名作爲輸入,並可以WRK efficently