Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL-Trigger zum Festlegen der Spalte auf max + 1 funktioniert nicht

Das liegt daran, dass mysql ; sieht (das Trennzeichen) und unterbricht die Ausführung von CREATE TRIGGER

Versuchen Sie zu ändern zu:

delimiter |


CREATE TRIGGER ins_saved_listing BEFORE INSERT ON saved_listing
FOR EACH ROW BEGIN
    SET NEW.create_dt = NOW();
    SET NEW.rank = (SELECT MAX(rank) + 1 FROM saved_listing WHERE user_id = NEW.user_id);
END;

|

delimiter ;