En tu script no estás poniendo los cierres de sentencia.
MySQL exige que toda sentencia termine cierre con un terminador, que por default es el punto y coma (;). Además, no puedes usar parámetros de esa forma sin usar un SP.
Esto, que yo sepa, no lo puedes usar en un script, porque el script no puede invocarse pasándole parámetros.
Tendrías que ejecutar esa misma sentencia pero poniendole los valores en lugar de "?". y luego usar el resto del script:
Pero la salida de este no he visto que pueda ser tomada desde fuera del MySQL, a menos que pongas todo en un SP. Normalmente un sript funciona en forma encapsulada y hace las tareas sin devolución de datos, como no sea por consola.
Ten en cuenta que migrar estas cosas no es sencillo entre DBMSs.
¿Por qué no lo haces con un SP?