From: | "Carlos Chávez Z(dot)" <cchavez(at)oxyman(dot)com(dot)pe> |
---|---|
To: | pgsql-es-ayuda(at)postgresql(dot)org |
Subject: | Re: [pgsql-es-ayuda] Problemas con el valor actual de una secuencia dentro de una función |
Date: | 2007-06-07 16:41:35 |
Message-ID: | 4668353F.1010402@oxyman.com.pe |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
Alvaro Herrera escribió:
> "Carlos Chávez Z." escribió:
>
>> ERROR: relation with OID 34255 does not exist
>> SQL state: 42P01
>> Context: SQL statement "update tdetpermisos set percodigo= (select
>> currval('rrhh.permisos_percodigo_seq'))"
>> PL/pgSQL function "fncgrabapermisos" line 11 at SQL statement
>>
>
> Hola, el problema no tiene nada que ver con la secuencia sino con la
> tabla temporal. Este es un bug de Postgres, conocido y corregido en la
> version 8.3 (aun por salir). En el intertanto, puedes poner el UPDATE
> como una cadena que envias con EXECUTE. (Todos los usos de tablas
> temporales en funciones deben ser asi).
>
Gracias Alvaro por la pronta respuesta, efectivamente el problema era
del postgresql y las tablas temporales; bueno ya lo correguí como me
indicaste (utilizando EXECUTE) tanto en el update de mi tabla como en el
insert.
Aprovecho para hacer otra consulta en este caso es sobre el EXECUTE
según he podido leer, también se utiliza con PREPARE como en el
siguiente ejemplo:
PREPARE fooplan (int, text, bool, numeric) AS
INSERT INTO foo VALUES($1, $2, $3, $4);
EXECUTE fooplan(1, 'Hunter Valley', 't', 200.00);
Cuál es la diferencia en usarlo así o con una cadena como fue en mi
caso?? es por cuestiones de compatibilidad entre versiones?.
De antemano gracias a todos por su ayuda y en especial a Alvaro.
Saludos
Carlos Chávez Z.
Arequipa - Perú
From | Date | Subject | |
---|---|---|---|
Next Message | Alvaro Herrera | 2007-06-07 16:48:49 | Re: Almacenamiento de imagenes en PostgreSQL 8.2.4 |
Previous Message | Roberto Tortolero | 2007-06-07 16:23:35 | Almacenamiento de imagenes en PostgreSQL 8.2.4 |