No estás programando en Pascal.
No puede haber dos BEGIN anidados.
Fíjate bien en la sintaxis de las sentencias de control de flujo.
Cita: IF condición THEN
sentencias;
ELSE
sentencias;
ELSEIF condicion THEN
sentencias;
END IF;
Por otr lado, si lo estás haciendo en modo consola, es necesario reemplazar el delimitador de sentencias para que te tome el texto completo del trigger como un todo.
En ese caso tienes que poner:
Cita: DELIMITER $$
CREATE TRIGGER trig1 BREFORE INSERT ON Tabla1
BEGIN
(El cuerpo del trigger va acá)
END $$
DELIMITER ;
Eso se hace para que reconozca el fin del script antes de almacenarlo, y luego SIEMPRE se debe reestablecer el delimitador ";".
Nunca uses DELIMITER // o bien DELIMITER \\. Puede causar un caos en el código.