sql >> Database >  >> RDS >> Mysql

MySQL-trigger om kolom in te stellen op max + 1 werkt niet

Dat komt omdat mysql ; . ziet (het scheidingsteken) en verbreekt de uitvoering van CREATE TRIGGER

Probeer te veranderen naar:

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 ;



  1. Goedkoopste manier om te bepalen of een MySQL-verbinding nog actief is

  2. PostgreSQL-controlebeperking voor externe sleutelvoorwaarde

  3. Hoe OCT() werkt in MariaDB

  4. Een reeks SQL-query's uitvoeren met behulp van een batchbestand?