Este comportamiento puede deberse a propiedad de conexión
allowMultiQueries=true
. Supongo que esta propiedad hará que MySQL divida las consultas en ;
como un separador de consultas y luego ejecútelos como consultas separadas, esencialmente rompiendo su código de creación de activadores.
Como dijiste en una respuesta, ahora eliminada, agregando allowMultiQueries=true
realmente resolvió el problema (contrariamente a mis expectativas), el problema podría ser el último ;
en tu consulta Entonces, otra cosa para verificar es si el problema desaparece eliminando el último ;
(en END;
) en su secuencia de comandos (y no usar allowMultiQueries=true
). Algunas bases de datos no consideran ;
para ser válido al final de una declaración (ya que en realidad es un delimitador para separar declaraciones).
(esta respuesta se basa en mi comentario anterior)