Mysql
 sql >> Base de données >  >> RDS >> Mysql

Utilisation de liquibase pour créer des déclencheurs dans mysql

Votre déclencheur peut être facilement converti en formulaire à déclaration unique :

CREATE TRIGGER myTrigger
BEFORE INSERT 
ON myTable 
FOR EACH ROW
SET NEW.my_timestamp = COALESCE(NEW.my_timestamp, NOW());

qui n'a pas besoin de réassigner le délimiteur.

Si NULL est inséré dans cette colonne parce que cette colonne n'est pas répertoriée dans la liste des colonnes de la requête INSERT, vous pouvez simplement utiliser DEFAULT CURRENT_TIMESTAMP dans la définition de colonne et le déclencheur n'est pas nécessaire. Mais si la valeur NULL est définie explicitement, cette méthode n'est pas applicable.