2016-10-22 78 views
0

我是新來使用事件事務。我需要的是將這兩組代碼結合起來,將舊數據移動到歷史記錄表中。 代碼有什麼問題? 嘗試過許多不同的語法,但錯誤是: 「#1064 - 你在你的SQL語法錯誤;檢查對應於你的MySQL服務器版本使用附近的'歷史‘ ON安排在時間戳’正確的語法手冊2016-10-22 16:00:00'DO START TRA'at line 1「在事件中創建事務mysql錯誤

DELIMITER !! 
CREATE EVENT 'History' 
ON SCHEDULE AT TIMESTAMP '2016-10-22 16:00:00' 
DO 
START TRANSACTION; 
set @N := (now()); 
INSERT INTO ss_log_history select * from ss_log where tid < date_sub(@N,INTERVAL 15 DAY); 
DELETE FROM ss_log WHERE tid < date_sub(@N,INTERVAL 15 DAY); 
COMMIT; 
END !! 
DELIMITER ; 
+0

我還是不明白這一點。正如你應該知道的,一個人可以在沒有發現錯誤的情況下主演幾個小時的代碼。爲此,我禮貌地請求幫助!該重複不具有相同的語法 – user3260939

回答

0

移除事件名稱周圍的單引號'。它應該是

CREATE EVENT History 

參考Documentation瞭解更多信息

+0

這給出了下一個錯誤。就像我說的,試了很多 – user3260939

+0

#1064 - 你的SQL語法錯誤;檢查與您的MySQL服務器版本相對應的手冊,以在'set @N:=(now())'附近使用正確的語法。 INSERT INTO ss_log_history select * from ss_log where tid <'at line 5 – user3260939