Hola gente, estoy teniendo un problema bastante molesto.
Tengo 2 tablas... "usuario" y "perfil"
existe una relación entre usuario y perfil a través de un atributo pefil_id, que es autoincrementable.
Luego de eso, existe un procedimiento almacenado "new_profile" cuyo código es el siguiente
Código:
BEGIN
DECLARE v_id int;
INSERT into perfil VALUES(null,name,birth,sex,country,bio,null);
SELECT DISTINCT last_insert_id() into v_id from perfil;
UPDATE usuario set usuario.id_perfil = v_id where usuario.username = p_username;
END
Los parámetros recibidos son del tipo correcto, y, cada linea por separado, funciona correctamente. Si hago sólo el insert inserta, si hago el insert y el select distinct me devuelve el last_insert_id() correctamente. e incluso si hago un update manual (sin usar la variable v_id) funciona perfectamente. Ahora, cuando ejecuto el procedimiento, simplemente no funciona, o eso aparenta (los Id autoincrementables de la tabla perfil se incrementan pero sin generar la fila correspondiente).
No se que hacer... hay alguna forma de debugear el procedimiento desde el phpmyadmin ?
Help plz...