Archive for Dezembro, 2008

Postgres PLPGSQL Functions + Tabelas Temporárias

A alguns dias atrás precisei criar uma função no postgres que fazia inserções e consultas em uma tabela temporária que deveria ser criada dentro da função. Acontece que só funcionava na primeira execução, depois disso sempre me retornava algum erro na tentativa de criar a tabela novamente. Eu precisava de uma instrução que tem no SQL Server e que me parece não ter no postgres – “Exists” e “ObjectExists”. Bom, na falta .. dar-se um jeito. A solução que encontrei é usar o controle de exceções para dinâmicamente criar a tabela temporária caso ela ainda não exista na sessão.

– TESTA SE A TABELA JÁ FOI CRIADA NA SESSÃO

EXECUTE ‘SELECT * FROM tabela_tmp OFFSET 1′;

– SE NÃO EXISTIR, A EXCEÇÃO É DISPARADA E ENTÃO CRIA-SE A TABELA TEMPORÁRIA

EXCEPTION
WHEN undefined_table THEN
CREATE TEMPORARY TABLE tabela_tmp (
campo_1 INTEGER,
campo_2 VARCHAR(30)
) ON COMMIT DROP;
END;

Problema resolvido :)

Abraços

Add comment Dezembro 17, 2008


 

Dezembro 2008
S T Q Q S S D
« Nov   Abr »
1234567
891011121314
15161718192021
22232425262728
293031  

Arquivos

Tópicos recentes

Tags

Addfont apache Aplicações audio bash Carreira desabilitado desativado Desktop diminuir Documento emprego Encoding Firefox FPDF Gerenciador Google GTK+ HDA iconv iReport Jasper jasperserver Java Linux MakeFont mudo mysql Partição PDF Perl PHP postgres procedure redimensionar Relatorio script shell shrink SLACKWARE som ttf2pt1 vaga Vista Windows

Categorias

Blogroll