2008/9/11 icjunior07 <[EMAIL PROTECTED]>:
> Fala galera, blz?
>
> Estou deseenvolvendo uma funcão plpgsql que faz a chamada para uma outra 
> funcão 2 vezes, e esta funcão que é
> chamada 2 vezes tem comandos de criacão de tabelas temporárias. Quando 
> executa pela primeira vez, ele funciona
> legal, mas na segunda chamada ele acaba dando erro na hora de inserir os 
> dados na tabela temporária, como se
> não aceitasse a criacão da mesma tabela temporária na mesma sessão.
> Alguém sabe algo sobre isso?

Tabelas temporarias persistem por toda a sessao, a menos que voce DROP
a tabela temporaria, claro.

Nao seria melhor retornar um cursor, ou mesmo um record set? Cuidado
com as condicoes de corrida, como o outro colega colocou.

homeprofile=# create temp table tmpfoo (foo_id integer);
CREATE TABLE
homeprofile=# insert into tmpfoo values (1);
INSERT 0 1
homeprofile=# create temp table tmpfoo (foo_id integer);
ERROR:  relation "tmpfoo" already exists
homeprofile=# \q
[EMAIL PROTECTED]:~$ psql homeprofile
Welcome to psql 8.3.1, the PostgreSQL interactive terminal.

Type:  \copyright for distribution terms
       \h for help with SQL commands
       \? for help with psql commands
       \g or terminate with semicolon to execute query
       \q to quit

homeprofile=# create temp table tmpfoo (foo_id integer);
CREATE TABLE


Roberto

-- 
http://blog.divisiblebyfour.org/
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a