Em 8 de novembro de 2013 16:29, Eduardo Rodrigues
<[email protected]>escreveu:
> Pessoal,
>
> utilizo o PostgreSQL 9.2 e quero replicar o conteúdo de uma tabela,
> levando em consideração a coluna recebimento que eh do tipo timestamp. No
> banco de dados online ficara armazenado apenas o período dos últimos 30
> dias, o que for maior do que 30 dias tenho que armazenar em um outro banco
> de dados. Entao pensei em utilizar o dblink, criei uma instrução SQL que
> funciona normalmente. Mas quando a executo em uma function ela compila mas
> no momento de executar a mesma retorna erro, acredito que seja uma caso de
> escape que nao estou conseguindo solucionar. Sera que alguém pode me
> ajudar?
>
Só faltou a principal informação: qual o erro que retorna?
[]'s
>
> Segue abaixo a estrutura da tabela
>
> *Estrutura das tabelas*
> *Banco de dados online*
> CREATE TABLE tabela(
> id bigint,
> user_id character varying(16),
> recebimento timestamp without time zone);
>
> *banco de dados historico*
> CREATE TABLE historico_tabela(
> id bigint,
> user_id character varying(16),
> recebimento timestamp without time zone);
>
>
> *instrução select*
>
> INSERT INTO historico_tabela
> SELECT * FROM dblink ('host=remote user=reply password=123
> dbname=database' ,
> 'SELECT * FROM tabela where recebimento <
> date_trunc(''second'',timestamp ''now()'') - INTERVAL''30 day'' ')
> AS resultado(id bigint, user_id character varying(16), recebimento
> timestamp without time zone);
>
>
> *function*
>
>
> CREATE OR REPLACE FUNCTION teste_reply()
> RETURNS int4 AS
> $BODY$
> declare
> condicao_where character varying(255);
> value2 int4;
> begin
>
> condicao_where := 'SELECT * FROM tabela where recebimento <
> date_trunc('second',timestamp 'now()') - INTERVAL '30 day';
>
> SELECT * FROM dblink('host=remote user=reply password=123
> dbname=database', condicao_where)
> AS resultado(id bigint, user_id character varying(16), recebimento
> timestamp without time zone);) INTO value2;
> return value2;
>
> end;
> $BODY$
> LANGUAGE plpgsql VOLATILE
> COST 100;
>
>
>
> _______________________________________________
> 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