Em 25 de abril de 2014 16:59, André Geraldo dos Santos <
[email protected]> escreveu:

> Janser
> Boa tarde.
>
> Quando utilizo return table com a sentença a abaixo recebo uma mensagem de
> erro.
>
> Sentença: return query select t1.nome_tabela from
> dblink_exec(connection_string, sentenca_sql) as t1(nome_tabela character
> varying(31));
>
> ERRO:  uma lista de definição de colunas somente é permitida para funções
> que retornam "record"
>
> Se executo a sentença conforme de outra maneira conforme é sugerido na
> mensagem erro, recebo outro erro diferente.
>
> Sentença:  return query select * from dblink_exec(connection_string,
> sentenca_sql);
> ERRO:  structure of query does not match function result type
> DETAIL:  Tipo text retornado não corresponde ao tipo character varying
> esperado na coluna 1.
>
> O return table da minha função é  "RETURNS table (nome_tabela character
> varying)".
>
> O erro parece ser meio óbvio, mas não é....
>
> Aguardo considerações e desde já agradeço pela atenção.
>
>
>
> André Tente utilizar o comando dblink() conforme abaixo, se não estou
enganado o dblink_exec é mais utilizado para insert, update e delete.

select * from dblink('conexao','select codigo from filial') as
resultado(codigo integer);
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a