From: | "Emanuel CALVO FRANCO" <postgres(dot)arg(at)gmail(dot)com> |
---|---|
To: | "Ivan Nathanael" <ihuai001postgres(at)gmail(dot)com>, pgsql-es-ayuda <pgsql-es-ayuda(at)postgresql(dot)org> |
Subject: | Re: consulta sobre transaccion |
Date: | 2008-11-05 12:06:21 |
Message-ID: | f205bb120811050406o522d62f5p4784b2f1507630ca@mail.gmail.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
te referis a funciones que hiciste en postgres?
El día 5 de noviembre de 2008 0:59, Ivan Nathanael
<ihuai001postgres(at)gmail(dot)com> escribió:
> Hola amigos, mi consulta es la siguiente:
>
> Tengo tres procedimientos almacenados los cuales insertan datos en tres
> tablas diferentes (un procedimiento para cada tabla), además tengo un
> formulario que hace uso de estos tres procedimientos para la inserción de
> datos, pero para conservar la atomicidad se deben insertar los tres o
> ninguno, lo mas fácil seria usar una transacción pero ahí surge el problema,
> ¿Cómo hago el traspaso de parámetros a los procedimientos que están dentro
> de la transacción?
>
> Begin transaction
>
> Insert_tabla1(int int)
>
Select insert_tabla1(9,9);
> Insert_table2(int int)
>
> Insert_table3(varchar 10,int4)
>
> commit
>
> Gracias por su ayuda.
>
> Saludos.
Ahora bien, te esta faltando el rollback en el caso de que por alguna
razon falle alguna de las funciones
(a menos que internamente eviten la insercion). En ese caso, que
internamente tengan un control, seria
al divino boton iniciar una transaccion. porque llegara al final sin
nada para commitear, por lo que iniciar una
transaccion...
te recomien que pispees el manual en la pagina 764 donde se explica
como hacer una posible transaccion en PL/Pgsql.
--
Emanuel Calvo Franco
Syscope Postgresql DBA
BaPUG / AOSUG Member
From | Date | Subject | |
---|---|---|---|
Next Message | Humberto Guillermo Luna | 2008-11-05 12:08:56 | Mantenimiento |
Previous Message | Alvaro Herrera | 2008-11-05 11:40:27 | Re: Convertir numero a HH:MM |