2017-07-15 3 views
0

私の髪の毛を引っ張ってから、私はMYSQLトリガで少し助けてやることができました。私はログを実行している2つのテーブルがあります。 「マスター」と「スレーブ」としましょう。ログが「マスター」に入力されたとき、列内の文字列が特定の基準を満たす場合、その新しい行の特定の値をスレーブ表にコピーする必要があります。これは私がこれまでに得ている最も近い特定のデータを別のテーブルにコピーするMYSQLトリガの問題

...それは、現在の行5に構文エラーを返して、なぜ把握することはできません

CREATE TRIGGER `web_log_filter` AFTER INSERT ON `master` FOR EACH ROW 
BEGIN 
    IF (NEW.criteria_column = 'criteriaX') THEN 
     INSERT INTO slave (coulmn1,column2,column3) 
    VALUES(NEW.coulmn1,NEW.column2,NEW.column3); 
    END IF; 
END 

ご迷惑をおかけして申し訳ありません。

答えて

0

DELIMITERをお使いですか?

DELIMITER $$ 

CREATE TRIGGER `web_log_filter` AFTER INSERT ON `master` 
    FOR EACH ROW 
BEGIN 
    IF (NEW.criteria_column = 'criteriaX') THEN 
     INSERT INTO slave (coulmn1, column2, column3) 
      VALUES(NEW.coulmn1, NEW.column2, NEW.column3); 
    END IF; 
END;$$ 
DELIMITER ; 
+0

返信ありがとうございます。私はノーではなかった!しかし、私はあなたのコードから実装しました、DELIMITERは構文エラーを与えます – scotty6861

関連する問題