RE: utilizar autocommit o commit por cada vez que realice una t

From: "Edwin Quijada" <listas_quijada(at)hotmail(dot)com>
To: minoztro(at)gmail(dot)com
Cc: pgsql-es-ayuda(at)postgresql(dot)org
Subject: RE: utilizar autocommit o commit por cada vez que realice una t
Date: 2005-05-09 13:44:04
Message-ID: BAY1-F20E23F65A6E5078AFF9BADE31E0@phx.gbl
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Hasta donde se Postgres no usa transacciones anidadaes por lo tanto si haces
mas de un commit para el sera igual que uno porque se estara refiriendo a la
primera transaccion yo que tuy elimino el autocommit

*-------------------------------------------------------*
*-Edwin Quijada
*-Developer DataBase
*-JQ Microsistemas
*-809-747-2787
* " Si deseas lograr cosas excepcionales debes de hacer cosas fuera de lo
comun"
*-------------------------------------------------------*

>From: Milton inostroza <minoztro(at)gmail(dot)com>
>Reply-To: Milton inostroza <minoztro(at)gmail(dot)com>
>To: pgsql-es-ayuda(at)postgresql(dot)org
>Subject: [pgsql-es-ayuda] utilizar autocommit o commit por cada vez que
>realice una transacción
>Date: Fri, 6 May 2005 22:26:51 -0400
>
>hola, espero explicarme lo mejor posible para que me puedan ayudar.
>
>Estoy desarrollando un sistema (python) y he conectado casi toda la
>base de datos utilizando ''AUTOCOMMIT" pero he tenido muchos problemas
>al momento de insertar en una tabla la cual tiene varias fk 's de
>otras tablas. me explico mejor imaginen que tabla3 tiene un fk de
>tabla2 y que para insertar todos los datos de tabla3 tengo que primero
>insertar los datos de tabla2...algo asi como que un empleador tiene
>una sola dirección, entonces primero debo insertar direccion y despues
>empleador (reglas de integridad)...ahora bien el problema se da cuando
>se inserta de forma exitosa direccion pero por algun error al momento
>de insertar empleador este no se inserta, como utilizo autocommit no
>puedo hacer un rollback (por lo menos lo realizo y no resulta), ahora
>la pregunta es...dejo de utlizar autocommit y despues de cada execute
>que haga debo realizar un commit? la estructura de codigo que utilizo
>es:
>
>try:
> insert en tabla2
>except:
> error0
>try:
> insert en tabla3
>except:
> error1
>
>ahora imaginen que son 5 tablas y que todas deben insertarse a la vez,
>es decir son las 5 exitosas o ninguna...se que he sido un poco
>enredado pero por favor ayudenme, miren que cambiar de autocommit a
>commit en un sistema que inserta, modifica y selecciona de 35 tabla es
>algo tremendo.
>
>gracias por su ayuda y comprension,
>
>si utilizará commit, me imagino que la estructura sería la siguiente:
>
>try:
> insert en tabla5
>except:
> error5
>try:
> insert en tabla4
>except:
> error4
>try:
> insert en tabla3
>except:
> error3
>try:
> insert en tabla2
>except:
> error2
>try:
> insert en tabla1
> conexion(commit) #si todas resultan bien aca las autorizo para que
>se queden
> #en la base de datos
>except:
> error1
>
>
>--
>Milton Inostroza Aguilera
>Desarrollador de RemuneX (sistema de remuneraciones amparado bajo GPL)
>
>---------------------------(fin del mensaje)---------------------------
>TIP 8: explain analyze es tu amigo

_________________________________________________________________
Las mejores tiendas, los precios mas bajos, entregas en todo el mundo,
YupiMSN Compras: http://latam.msn.com/compras/

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Leonel Nunez 2005-05-09 14:10:46 Re: libpq
Previous Message Edwin Quijada 2005-05-09 13:40:44 Re: imagenes en la DB