Em Seg, 2013-05-27 às 11:21 -0300, Dickson S. Guedes escreveu:
> Em Seg, 2013-05-27 às 11:13 -0300, Thiago escreveu:
> > Bom dia a todos!
> > 
> > Desenvolvi uma procedure que carrega uma tabela temporária para depois 
> > apenas fazer o select do conteúdo da mesma.
> > 
> > No inicio da procedure, antes de criar a tabela, tenho que verificar se 
> > a mesma já existe. Caso exista eu preciso excluir. Para isso faço a 
> > seguinte rotina:
> > 
> > select schemaname
> > from pg_tables
> > where
> >     schemaname like 'pg_temp%' and
> >     tablename = 'tmp_tb_vendas_mensal_f'
> > into vSchema;
> > 
> > if (vSchema is not null) then
> >     drop table tmp_tb_vendas_mensal_f;
> > end if;
> > 
> > Eu percebi que quando eu crio a tabela, cada seção vai criar em um 
> > esquema diferente. Quando duas ou mais pessoas gerarem o relatório em 
> > paralelo serão criadas n tabelas.
> > 
> > Como faço para saber qual foi criada pela minha seção?
> 
> 
> Apesar de sua pergunta ser esta, acredito fielmente que não é isto que
> você precisa.
> De uma olhada em DROP TABLE IF EXISTS 


Apenas fazendo um adendo, quando você cria a tabela temporária em uma
transação você pode informar ao banco o que fazer com a mesma, veja em
[1] a opção ON COMMIT e nela a opção DROP.


[1] http://www.postgresql.org/docs/9.0/static/sql-createtable.html

[]s
-- 
Dickson S. Guedes
mail/xmpp: [email protected] - skype: guediz
http://guedesoft.net - http://www.postgresql.org.br
http://www.rnp.br/keyserver/pks/lookup?search=0x8F3E3C06D428D10A

Attachment: signature.asc
Description: This is a digitally signed message part

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

Responder a