Obrigado Flávio e Euler.

Euler, é isso mesmo, quero usar o For ali para ele pegar cada tabela e já
converter, mais não estou conseguindo encaixar direito ele, deve ser porque
ainda sou novo e estou apanhando bastante kkkkkk
Mais onde ele ficaria melhor para ler e converter tabela a tabela?

Sua função ficou ótima, eu testei e era isso mesmo que estava tentando fazer

obrigado



Enviado com MailTrack
<https://mailtrack.io/install?source=signature&lang=pt&referral=bruno.dc.fel...@gmail.com&idSignature=24>

Em 16 de novembro de 2015 00:13, Euler Taveira <eu...@timbira.com.br>
escreveu:

> On 15-11-2015 07:21, Flavio Henrique Araque Gurgel wrote:
>
>> Sua função está colocando aspas e parênteses no nome da tabela.
>> Corrija a concatenação no execute.
>>
>> O problema não é só esse. Ele está usando o tipo record ao invés do
> elemento 'relname' do record.
>
> Como o Flavio disse, o ideal é não usar aspas e sim a função quote_ident
> que decide se precisa usar aspas duplas ou não.
>
> CREATE OR REPLACE FUNCTION teste() returns setof record as $$
> DECLARE
> tabela CURSOR IS SELECT relname FROM pg_stat_user_tables ORDER BY relname;
> linha record;
> BEGIN
>         OPEN tabela;
>         FETCH tabela INTO linha;
>         EXECUTE 'COPY (SELECT row_to_json(t) FROM (SELECT * FROM ' ||
> quote_ident(linha.relname) || ') t) TO ''/tmp/teste''';
>         CLOSE tabela;
> END;
> $$
> LANGUAGE plpgsql
>
> É claro que se você declarou um cursor é porque vai usar um 'FOR foo IN
> bar LOOP' ali.
>
>
> --
>    Euler Taveira                   Timbira - http://www.timbira.com.br/
>    PostgreSQL: Consultoria, Desenvolvimento, Suporte 24x7 e Treinamento
> _______________________________________________
> pgbr-geral mailing list
> pgbr-geral@listas.postgresql.org.br
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral




-- 
*Bruno da Cunha Felipe*
_______________________________________________
pgbr-geral mailing list
pgbr-geral@listas.postgresql.org.br
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a