Ayuda con una función -- transacciones anidadas -- ayuda urgente

From: badillo(at)cav(dot)desoft(dot)cu
To: pgsql-es-ayuda(at)postgresql(dot)org
Subject: Ayuda con una función -- transacciones anidadas -- ayuda urgente
Date: 2007-01-31 22:21:21
Message-ID: 58686.200.55.147.90.1170282081.squirrel@webmail.cav.desoft.cu
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

Saludos

la Idea es que estoy recorriendo todos los elementos de una tabla y
mandando a ejecutar una inserción en otra tabla con el valor de esos
registros mas otros cálculos internos, pero que a su vez esos valores
dependen del valor anterior mente insertado...

Esto no me funciona, por que cuando se realiza la llamada a la función
para insertar no se aplica el cambio en la BD y por tanto no me funcionan
los calculos internos.

Me pueden decir como puedo lograr que cuando llame a la función se aplique
el cambio a la BD, es decir se realice un commit de esa transacción.

for rs_doc in
select * from tb_documentos order by id_logico
loop

/* que lo que ocurra en al llamada a esta función se aplique
automáticamnete */

cadena = asistente_renumerar_doc(rs_doc.id_logico);

/* Como esta ahora no se aplica, por tanto no puedo hacer referencia a los
valores anteriores */

end loop;

Cualquier opinión la consideraré y agradeceré mucho

> Saludos amigos, tengo la siguiente problemática.
>
> En mi BD tengo una tabla la cual me piden que la reenumere por uno de los
> campos que posee cumpliendo x condiciones.
>
> Para ello realicé la siguiente fu8nción:
>
>
> $body$
> declare rs_doc tb_documentos%rowtype;
> declare cadena varchar;
> begin
> for rs_doc in
> select * from tb_documentos order by id_logico
> loop
> cadena = asistente_renumerar_doc(rs_doc.id_logico);
> end loop;
> return 'ok';
> end;
> $body$
>
>
> El problema está en como puedo hacer que cuando se ejecute la sentencia:
> cadena = asistente_renumerar_doc(rs_doc.id_logico);
> se realice COMMIT; para que los valores cambiados se guarden y me funcione
> entonces las operaciones que se hacen.
>
> Gracias y espero por su ayuda.
>
>
>
> ---------------------------(fin del mensaje)---------------------------
> TIP 5: ¿Has leído nuestro extenso FAQ?
>
> http://www.postgresql.org/files/documentation/faqs/FAQ.html
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Martin Marques 2007-01-31 22:56:23 Re: Compilacion en AIX
Previous Message Miguel Ortega 2007-01-31 20:26:36 Fuzzy Databases