2009-08-18 11 views
0

私はMySQLのトリガ:ERROR 1064(42000):あなたは、あなたのSQL構文でエラーが発生している

CREATE TRIGGER userChangePasswd 
BEFORE UPDATE ON originalTable 
FOR EACH ROW 
BEGIN 
INSERT INTO logs (email,clear,name) SELECT email,clear,name FROM originalTable 
END 
を次のように別のテーブルにそれらの変更をテーブル上の変更を監視するトリガーを作成して挿入しようとしています

MySQLは次の文は、非常にwhere句基準

INSERT INTO logs (email,clear,name) SELECT email,clear,name FROM originalTable 
でファイルに動作し、次のエラーに

ERROR 1064 (42000): 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 'INSERT INTO logs (email,clear,name) SELECT email,clear,name FROM ' originalTable at line 5 

を示し続けます

トリガー内の挿入ステートメントの問題

+0

5.0.10より高いバージョンを使用していますか? – Zed

答えて

1
CREATE TRIGGER `orgTbl_before_upd_tr` BEFORE UPDATE ON `orgTbl` 
FOR EACH ROW 
BEGIN 
    INSERT INTO newTbl (field1, field2) VALUES (old.field1, old.field2); 
END; 
関連する問題