0
CREATE TRIGGER expiryset ON test FOR INSERT
BEGIN
DECLARE exp TIMESTAMP;
DECLARE name TEXT;
SET @name := (SELECT name from test ORDER BY created_at DESC limit 1);
SET @exp := (SELECT TIMESTAMPADD(WEEK,2,(CURRENT_TIMESTAMP)));
UPDATE test SET expiry = @exp WHERE name= @name;
END;
上述觸發器工作,但只有在執行時我不能保存它。語法有什麼問題語法觸發器創建Mysql
感謝您的快速回復。我仍然收到語法錯誤:錯誤1064(42000):您的SQL語法有錯誤;檢查與您的MySQL服務器版本相對應的手冊,在正確的語法附近使用'ON test FOR INSERT BEGIN DECLARE exp TIMESTAMP; DECLARE名稱TEXT; SET @name:='at line 1 mysql> mysql> DELIMITER; – user1000622
您對觸發器定義使用SQL Server語法。現在它已修復,您必須根據需要定義觸發上升事件(AFTER/BEFORE)。 –