From: | Alvaro Herrera <alvherre(at)dcc(dot)uchile(dot)cl> |
---|---|
To: | Andres Garcia Jimenez <agarcia(at)ids(dot)com(dot)mx> |
Cc: | pgsql-ayuda(at)tlali(dot)iztacala(dot)unam(dot)mx |
Subject: | Re: [Pgsql-ayuda] Problemas con funciones |
Date: | 2003-12-16 03:01:47 |
Message-ID: | 20031216030147.GA1650@dcc.uchile.cl |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-es-ayuda |
On Mon, Dec 15, 2003 at 08:13:53PM -0600, Andres Garcia Jimenez wrote:
> 1.- creo un tabla (T1)
[...]
> 5.- Borro la tabla.
> WARNING: Error occurred while executing PL/pgSQL function mifuncion
> WARNING: line 43 at SQL statement
> ERROR: pg_class_aclcheck: relation 701159 not found
Lo que pasa es que PL/pgSQL mantiene un cache de compilacion. La
primera vez que ejecutas la funcion, se compila y registra el OID de la
tabla que creaste. La segunda vez trata de usar ese mismo OID, pero
como creaste la tabla de nuevo, no funciona.
La solucion es usar EXECUTE ''create table ...'' en lugar del CREATE
TABLE directamente.
--
Alvaro Herrera (<alvherre[a]dcc.uchile.cl>)
"La primera ley de las demostraciones en vivo es: no trate de usar el sistema.
Escriba un guión que no toque nada para no causar daños." (Jakob Nielsen)
From | Date | Subject | |
---|---|---|---|
Next Message | Miren Amiano | 2003-12-16 09:48:37 | [Pgsql-ayuda] [Pgsql-ayuda]los triggers y sus cosas |
Previous Message | Andres Garcia Jimenez | 2003-12-16 02:13:53 | [Pgsql-ayuda] Problemas con funciones |