NOME DA TABELA POR PARAMETRO

NANDARABBIT 10/08/2010 10:07:41
#349872
Olá

Preciso criar uma função no banco que execute um select com a tabela sendo um parâmetro. Mais ou menos assim:

parametro = nomedatabela

select * from parametro

Uso o postgresql.

Alguém poderia me ajudar?
LLAIA 10/08/2010 10:30:58
#349876

select * from parametro where campo = parametro <--- aqui parametro é uma variável

como vc quer o nome de uma tabela então o campo é do tipo char ou varchar, então não esqueça de colocar [ô] [ô] aspas simples cercando o parâmetro

select * from parametro where campo = [ô]nomedatabela[ô] <-- aqui o nome é passado diretamente sem varoável
NANDARABBIT 10/08/2010 11:45:55
#349880
Na verdade o parametro é antes da cláusula where...
MARCOSLING 10/08/2010 13:29:23
#349887
No postgresql não sei como funciona, mas no sqlserver é assim:

execute ([ô]select * from [ô] + @v_name_tabela)

pode ser que tenha algo parecido no postgresql
NANDARABBIT 11/08/2010 09:28:18
#349954
Então, pelo que vi no manual, este [Ô]execute[Ô] funciona somente para update, delete e insert.
NANDARABBIT 11/08/2010 17:09:19
#350010
Gentemmm!!

Eu mesma resolvi...
Vou deixar aqui caso alguem precise..

FOR registro_ou_linha IN EXECUTE texto_da_expressão LOOP
instruções
END LOOP;

fonte: http://pgdocptbr.sourceforge.net/pg80/plpgsql.html

Valeu pela ajuda pessoal.

Tópico encerrado , respostas não são mais permitidas