transacciones+rollback problemilla

entukasamejor
20 de Julio del 2005
Hola a todos,

Estoy desarrollando una aplicación y quiereo realizar operaciones de inserción y actualización con la opción de recuperarme de algún error que pueda suceder durante la ejecución. Entonce, tengo en mi aplicación algo así:

set autocommit = 0;
savepoint namesavepoint;
...
recupero información de la bd (select)
if no hay información recuperada
{
inserto algunos datos que tengo;
if insert devuelve error
realizo un rollback;
recupero de la base de datos información que acabo de insertar;
if select no devuelve nada
die("no se han recuperado los datos");
}
...
commit;
set autocommit = 1;

Esto es un esbozo de mi código. El problema está en que siempre se sale la aplicación con la instrucción "die", no consigo pasar de ahí.

Yo quiero poder tener acceso a la información que acabo de guardar en la base de datos y NECESARIAMENTE he de poder realizar un ROLLBACK, ante cualquier error que surja, al punto de RECUPERACIÓN que he puesto al principio de mi aplicación.

Me puede ayudar alguien con el problema para que pueda hacer las cosas que pretendo ??

Muchas gracias por la ayuda,
un saludo,
Blai.