1

MySql でトリガーを作成しようとしましたが、次のエラーが発生しました。

#1064 - SQL 構文にエラーがあります。1行目の「DELIMITER」付近で使用する正しい構文については、MySQLサーバーのバージョンに対応するマニュアルを確認してください

DELIMITER $$
CREATE TRIGGER library_update
AFTER UPDATE ON wq6vt_vehiclemanager_vehicles
FOR EACH ROW 
BEGIN
    INSERT IGNORE INTO wq6vt_vehiclemanager_library (maker, model) VALUES(NEW.maker, NEW.vmodel);

    INSERT INTO wq6vt_vehiclemanager_library_data (co2_class) 
      SELECT co2_class FROM wq6vt_vehiclemanager_vehicles
      WHERE maker = NEW.maker AND vmodel = NEW.vmodel;   
END $$
DELIMITER;

トリガーの最初のクエリではエラーが発生しませんが、2 番目のクエリではエラーが発生します。INSERT 内の SELECT に問題があります...そう思います

4

1 に答える 1

2

キーワードと記号の間にはスペースが必要です。

DELIMITER ;
      -- ^  space in between here
于 2013-03-12T12:17:08.877 に答える