Todo es posible... La pregunta que surge es: ¿Sobre qué lenguaje de programación estás trabajando?
Pregunto esto porque un SP parametrizado devuelve el valor en el parámetro, pero para poder recuperarlo en la aplicación el lenguaje debe poder recuperar el parámetro y leer su valor.
Este tipo de cosas son muy sencillas de hacer
en .Net, pero no son tan fáciles usando
mysql_query(), de PHP, por ejemplo.
Fuera de eso el SP mejor programado quedaría:
Código MySQL:
Ver original INSERT INTO arribos
(idArribos
, idEmpTransporte
,Direccion
,NumVuelo
, FechaLlegada
, HoraLlegada
, NumPersonas
) VALUES(xidArribo
, xidEmpTransport
,xDireccion
,xnumVuelo
,xfechaLlegada
, xHoraLlegada
, xnumPersonas
); SET xidArribo
= LAST_ISERT_ID
();
Hay algunos tips:
1) No se deben declarar variables con el mismo nombre de las variables del prototipo.
2) CASE sin un ELSE puede darte un error si la variable toma un valor no contemplado en los WHEN.
3) Si sólo vas a tomar una opción, usar un CASE carece de sentido.
4) Si lo que quieres recuperar es un valor autogenerado, para eso existen funciones específicas.