vc pode criar uma função para verificar se a tabela temporaria ainda esta criada.
CREATE FUNCTION ExisteTabela(Tabela VARCHAR(30)) RETURNS BOOLEAN as $$ DECLARE _OID INTEGER; begin SELECT oid into _OID FROM pg_class WHERE relname = Tabela; RETURN (_OID IS NOT NULL); END;$$ LANGUAGE 'plpgsql'; Marcelo Magno escreveu: >Boa Tarde, > >Estou fazendo uns testes com tabelas temporarias mas estou tendo alguns >problemas... > >considere o seguinte codigo plpgsql como exemplo: > >create temporary table tmp_tbl_a (like tbl_a) on commit drop ; >insert into tmp_tbl_a * from tbl_a; >raise notice 'count'; >select into contagem count(*) from temp_tarif_htl; >raise notice 'cont da tabela: %', contagem; > >Rodando a funcao em que esse codigo se encontra dentro do pgAdmin, >na primeira vez ele funciona como esperado. Na segunda tentativa de >rodar, eu já ganho uma mensagem de erro: > >ERROR: relation with OID 394100 does not exist > >Se eu fecho o editor de query, e abro novametne, funciona sempre bem... >mas se eu tento rodar mais do que 1 vez por sessão do editor de query eu >tomo esse erro. > >Tentei colocar um begin e commit em volta da chamada da funcao, mas o >erro continua o mesmo... > >Alguem saberia me direcionar sobre o que procurar para sanar esse >problema ? > >Grato pelo auxilio, >Marcelo Magno > > > > > > >------------------------------------------------------------------------ > >_______________________________________________ >pgbr-geral mailing list >[email protected] >https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral > > _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
