[Pgsql-ayuda] transacciones!!

Leonardo Boet Sánchez boet@gtm.tel.etecsa.cu
Tue, 10 Feb 2004 09:01:03 -0500


Buenos días,
Quisiera saber que sentencia utilizar para poder coger un error en una transacción para poder dar el rollback, me explico: Tengo la siguiente sentecia.

---------------------------------------------------------------------------------------------
Begin; /*comienzo de la transacción*/

insert into config (id_config, descripcion) values ('15' , 'Dpto de contabilidad');
insert into detalles_config (id_config, id_persona) values ('15', '25');
insert into detalles_config (id_config, id_persona) values ('15', '27');
insert into detalles_config (id_config, id_persona) values ('15', '30');

commit; /*Ejecución de la transacción*/
-----------------------------------------------------------------------------------------------
Entre el bloque de los insert y el commit (pienso yo) debe existir una manera de saber que ocurrió un error para entonces darle un rollback, realmente si hay un error no ocurre la transacción pero no quiero que esto se me quede en el aire, yo quisiera de manera implisita darle yo el rollback,  pero no se que utilizar.

Gracias.


Leonardo Boet Sánchez
Especialista Analisis de Sistemas.
ETECSA. Gerencia Guantánamo.
Telef. 381797, 381018 ext 4208