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

MYSQL-Trigger-Problem

Das Problem besteht darin, dass Sie die Tabelle, die diesen Trigger aufgerufen hat, nicht ändern können. Es ist eine Einschränkung.

Versuchen Sie, einen BEFORE INSERT-Trigger zu verwenden und vor dem Einfügen von Daten neue Werte festzulegen. Zum Beispiel:

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

Und die Frage - warum werden Sie diese Daten in der Tabelle speichern? Sie können es direkt in der SELECT-Abfrage berechnen.