2014-08-27 47 views
0

另一個表更新更新表我有兩個表
標籤
2. Triger_testing觸發基於在MySQL

標籤說明
ID INT,IS_ACTIVE(TINYINT)

Trigger_Testing Desc
TAG_ID(INT),IS_ACTIVE(TINYINT)

我想在標籤表更新,其中更新trigger_testing表上創建觸發器。所以,如果tag.is_active設置爲0觸發必須火災和更新trigger_testing表和集trigger_testing.is_active = 0,其中trigger_testing.tag_id = tag.id

我試圖在MYSQL中創建一個觸發器,但得到語法異常。有人可以幫我解決這個問題。

下面是代碼: -

CREATE TRIGGER update_trigger_testing AFTER UPDATE ON tag 
FOR EACH ROW 
BEGIN 
    IF NEW.is_active=0 THEN 
     UPDATE trigger_testing SET is_Active=0 WHERE tag_id=NEW.id 
    END IF 
END$$ 

DELIMITER; 

我得到的錯誤是:

錯誤代碼:1064 您的SQL語法錯誤;檢查對應於你的MySQL服務器版本使用附近的正確語法手冊「端IF END $$ DELIMITER」在行6

回答

1
CREATE TRIGGER update_trigger_testing AFTER UPDATE ON tag 
FOR EACH ROW 
BEGIN 
    IF NEW.is_active=0 THEN 
     UPDATE trigger_testing SET is_Active=0 WHERE tag_id=NEW.id; 
    END IF; 
END; 
+0

感謝答案,我只是找到了解決辦法爲好, update語句後我錯過了分號; – user2531799 2014-08-27 11:51:35