次のことを行うMySQLトリガーを設定しようとしています。
- 誰かがdatabaseA.billsにデータを挿入すると、databaseB.billsにその行がすでにあるかどうかが確認され、ない場合は、databaseB.billsに追加の挿入が行われます。
これが私が持っているものです:
CREATE TRIGGER ins_bills AFTER INSERT ON databaseA.bills
FOR EACH ROW
BEGIN
IF NOT EXISTS (SELECT 1 FROM databaseB.bills WHERE billNumber=NEW.billNumber) THEN
INSERT INTO databaseB.bills (billNumber) VALUES (NEW.billNumber)
END IF
END;//
DELIMITER ;
問題は、mysqlコンソールまたはphpMyAdminを使用して作成できないことです。END IF ENDの近くで構文エラーが返されますが、これは区切り文字の問題であると確信しています。
#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'END IF END' at line 6
私は何が間違っているのですか?