2012-06-11 17 views
5

是否可以將額外的代碼寫入到創建的mysql表格中,使其在X時間後自行下降?像臨時表一樣,但會持續更長時間。x小時後的MYSQL表格放置

我需要創建一個臨時任務表,但我需要他們持續更長的時間比會話

+0

你想達到什麼目的?某種形式的緩存? – mensi

+0

即時通訊創造一種方式讓人們上傳CSV文件。一旦上傳,他們需要選擇什麼內容它爲什麼字段和操作的東西(類似於mailchimp或活動監視器)。我無法看到這與臨時表的工作,因爲他們需要能夠被操縱,然後轉移和放棄。但是如果有人沒有完成這個程序,那麼病態桌子上就會充滿數據 – cardi777

回答

4
CREATE EVENT myevt 
     ON SCHEDULE AT CURRENT_TIMESTAMP + INTERVAL 1 HOUR 
     DO 
     DROP TABLE IF EXISTS MyTable; 
1

在你的情況與CSV文件,我建議不要在您的安裝過程中創建一個數據庫表因爲這會給DBMS帶來不必要的壓力。一個更好的辦法來做到這一點是:

  1. 移動上傳的文件,以「進入」目錄
  2. 解析CSV的前幾個字節,以確定您需要
  3. 列數和其他數據讓用戶分配的東西
  4. 讀取CSV文件DB的方式你的應用軟件需要
  5. 刪除文件

爲了清理CSV文件,可以使用cronjob刪除舊文件:find /dir/with/csv/files -type f -cmin +TIMEINMINUTES -delete