電子メール フィールドに @ 記号が見つからない場合に挿入が行われないようにするトリガーを MYSQL 5.0.95 で作成しようとしています。トリガー以外にもこれを行う方法があることは知っていますが、トリガーがどのように機能するかを本当に知りたいです
CREATE TRIGGER triggerUsersEmail
BEFORE INSERT ON Users
FOR EACH ROW
BEGIN
IF (Users.email NOT LIKE '%@%') THEN
DECLARE dummy INT;
SELECT not a valid email address INTO dummy FROM Users WHERE 1=1
END IF;
END;$$
PHPMYADMIN で $$ の区切り文字を使用して上記を実行すると、次のエラーが発生します。
#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 'DECLARE dummy INT; SELECT not a valid email address INTO dummy FROM Users WHERE' at line 6