View Single Post

   
  #2 (permalink)  
Old 04-09-2008, 06:52 PM
Alvaro Herrera
 
Posts: n/a
Default Re: inner join problem with temporary tables

PFC wrote:
>
> >This message appears:
> >
> >ERROR: relation "t_arti" does not exist
> >SQL state: 42P01
> >Context: SQL function "test1"
> >
> >
> >Why it does not work???
> >thanks for your help

>
> Because plpgsql functions are compiled on first execution and all
> queries are then prepared. All tables are referenced directly in prepared
> statements, not by name. Any prepared statement that refers to dropped
> tables (even dropped temp tables) is thus unfit for consumption.


This is correct but it's not the problem at hand -- notice how the
error message is not talking about an unknown OID. I think the problem
here is that he is using SELECT INTO, which is different in PL/pgSQL
than what is in plain SQL. I bet using CREATE TABLE AS instead of
SELECT INTO would work.

--
Alvaro Herrera http://www.CommandPrompt.com/
The PostgreSQL Company - Command Prompt, Inc.

---------------------------(end of broadcast)---------------------------
TIP 1: if posting/reading through Usenet, please send an appropriate
subscribe-nomail command to majordomo@postgresql.org so that your
message can get through to the mailing list cleanly

Reply With Quote