2014-12-04 48 views
1

誰能告訴我,什麼是在這個觸發Mysql的語法錯誤

DELIMITER | 

CREATE TRIGGER User_XEntity_Before_Delete 

BEFORE DELETE 

    ON UserXEntity FOR EACH ROW 

BEGIN 

    -- Insert record into Delete_UserXEntity table 
    INSERT INTO Delete_UserXEntity 
    (DeletedUserXEntityId, 
    UserId, 
    CreatedAt) 
    VALUES 
    (OLD.Id, 
    OLD.UserId, 
    NOW()); 

END; 

| 

DELIMITER ; 
+0

觸發看起來不錯,你將它添加MySQL的終端或其他一些客戶,像phpMyAdmin嗎? – 2014-12-04 06:32:02

回答

1

我已經得到了解決語法錯誤。其實我在phpmyadmin的觸發器窗口中輸入了這個代碼,在那裏它已經詢問了表名,時間和事件。所以我們只需要在該窗口中寫入觸發器操作代碼。我正在寫整個觸發器代碼,這就是爲什麼我給了我一個語法錯誤。

我們只需要編寫PHPMYADMIN下面的代碼添加新的觸發窗口:

INSERT INTO Delete_UserXEntity 
    (DeletedUserXEntityId, 
    UserId, 
    CreatedAt) 
    VALUES 
    (OLD.Id, 
    OLD.UserId, 
    NOW());