Ver Mensaje Individual
  #3 (permalink)  
Antiguo 31/10/2015, 17:51
Avatar de mortiprogramador
mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 14 años, 8 meses
Puntos: 214
Respuesta: Procedimiento Almacenado

Saludo
Pues a mí me funciona sin problema alguno,
inserta el perfil, luego toma el id
y actualiza el perfil del usuario

Solo cambie pues las tablas a las que apunto, y no tantos campos para el insert.

Código SQL:
Ver original
  1. -- Se asume que name y p_username son variables de entrada
  2. -- del PROCEDURE, y que ambas son varchar
  3. INSERT INTO borrar_perfil_borrar VALUES(NULL, name);
  4. SELECT DISTINCT last_insert_id() INTO v_id FROM borrar_perfil_borrar;
  5. UPDATE borrar_usuario_borrar SET borrar_usuario_borrar.id_perfil = v_id WHERE borrar_usuario_borrar.username = p_username;

En cuanto a debuggear el procedimiento,
pues modifica el procedure para que retorne una variable int inicializada en 0,
y dale valores en distintas instancias.

Por ej luego del insert cuando haga el select, verificar el valor de v_id
y sí ese valor es mayor a 0, entonces que la variable a retornar tenga el valor 1,
y luego del update, hacer un select al usuario y verificar cual perfil tiene,
y sí el valor es el mismo de v_id que la variable a retornar tenga el valor 2

Con eso se sabrá en donde está el inconveniente,
aunque reitero que a mí me funciona sin problema.
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com