2017-02-28 66 views
0

我有2個表load_data and logs如果某些數據匹配觸發 - Mysql

我在load_data表(mysql)上寫了一個觸發器。觸發器將數據插入到Updates上的日誌表中。

我想如果滿足以下條件

如果diIndex=3 && diMode=0 && diStatus=1則僅執行INSERT語句中的「load_data」表中插入數據。

我試過,但將引發一個錯誤

DELIMITER // 
BEGIN 
    IF (SELECT 1 FROM box_data WHERE diIndex=3 
         AND diMode=0 AND diStatus=1) = 0 THEN 
     INSERT INTO logs(user_id,button_name,flag,box_name) 
     values("83","Plant","1","Trigger") 
    END IF; 
END// 

DELIMITER;

回答

0

以下工作

IF EXISTS ((SELECT 1 FROM load_data WHERE diIndex=3 and diMode=0 and diStatus=1)) THEN 

     INSERT INTO logs(user_id,button_name,flag,box_name) 
     VALUES("83","Plant","1","Trigger"); 

END IF;