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

Problème de déclencheur MYSQL

Le problème est que vous ne pouvez pas modifier la table qui a appelé ce déclencheur. C'est une restriction.

Essayez d'utiliser un déclencheur BEFORE INSERT et définissez de nouvelles valeurs avant l'insertion des données. Par exemple :

CREATE TRIGGER anomes
BEFORE INSERT
ON formulario
FOR EACH ROW
BEGIN
  SET NEW.ano = EXTRACT(year FROM NEW.create_date);
  SET NEW.mes = EXTRACT(month FROM NEW.create_date); 
END

Et la question - pourquoi allez-vous stocker ces données dans la table ? Vous pouvez le calculer à la volée dans la requête SELECT.