2011-06-18 13 views
-1

以下のトリガーステートメントでERROR 1064を取得し続けます。 "右側の構文を" 5行目 "近くで使用するには 私は数時間苦労しましたが、何が間違っているのか理解してください!MYSQLトリガー定義 - 1064エラー

DELIMITER $$ 
CREATE TRIGGER status_upd AFTER UPDATE ON order_products 
FOR EACH ROW 
BEGIN 
    IF OLD.status_id != NEW.status_id THEN INSERT INTO op_status values(op_id,  NEW.status_id, curdate()); 
END$$ 
DELIMITER ;          

私が間違っていることがあります。 はあなたが

答えて

1

私はそれがこのようにすべきだと思いますありがとう:あなたはEND IF;を欠落していた

DELIMITER $$ 
CREATE TRIGGER status_upd AFTER UPDATE ON order_products 
FOR EACH ROW 
BEGIN 
IF (OLD.status_id != NEW.status_id) THEN 
INSERT INTO op_status values(op_id,NEW.status_id, curdate()); 
END IF; 
END$$ 
DELIMITER; 

+0

rahulさん、ありがとう、それは美しく働いた!私の悪い。 – sunil

+0

ようこそ、それを答えとしてマークしようとしてください:) – Rahul

+0

私はあなたのために最後に少しの説明を追加しました。そして欠けているビットを見つけるための+1。 –