En primer lugar, y por sobre todas las cosas, debes recordar un detalle: No existe un PL/SQL estandar.
Eso significa que cada DBMS hace con su versión de PL/SQL lo qe se le canta, y niniguno es compatible con la sintaxis de otro DBMS diferente (la próxima vez recuerda que no existe el SQL como DBMS, sino el MICROSOFT SQL SERVER).
Con esto quiero decir que en irrelevante si tu SP funciona en SQL Server, porque ni la sintaxis ni la lógica, ni el uso de las variables se parecen. Tiene4s que atenerte a la sintaxis de MySQL, no la de SQL Server. Y esa sintaxis la puedes ver sin problema en el manual de referencia.
En cuanto a este detalle:
Código SQL:
Ver originalEXEC SP_NueUsu '','Administrador','Papi','123'
Me resulta extraño que SQL Server acepte una constante donde debería existir una variable, pero si esto no prdue un error, puede ser asunto de SQL Server el cómo lo maneja.
En cuanto a MySQL, lo primero que debo preguntarte es ¿cómo llamas al SP
usu_nuevo? ¿Programáticamente o a través de otro script?
SI lo haces programáticamente, la variable debe ser una variable de sesión de usuario de MySQL, y la conexión debe ser permanente.
Si lo haces dentro de un SP, se puede usar una variable local.
Empecemos por allí.