sql >> Base de Datos >  >> RDS >> Mysql

Problema de activación de MYSQL

El problema es que no puede modificar la tabla que invocó este disparador. Es una restricción.

Intente usar un activador ANTES DE INSERTAR y establezca nuevos valores antes de insertar datos. Por ejemplo:

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

Y la pregunta:¿por qué vas a almacenar estos datos en la tabla? Puede calcularlo sobre la marcha en la consulta SELECCIONAR.