Em 18 de julho de 2012 10:31, Alexsander Rosa
<[email protected]>escreveu:

> Hoje eu coloco no SVN um "pg_dump" com a estrutura do BD (--schema-only).
> Cada vez que preciso mexer numa procedure tenho que selecionar a procedure
> desejada, copiar e colar em algum editor, acrescentar o "OR REPLACE" depois
> do CREATE e só então começar a fazer alguma coisa. E depois de pronta, a
> procedure só entra no SVN via o "pg_dump" seguinte.
>
> Eu gostaria que houvesse uma opção no "pg_dump" tipo
> "--procedures-in-separate-files" que gerasse o DUMP sem as procedures;
> estas, por sua vez, seriam gravadas em arquivos individuais chamados
> "nome-da-procedure.sql" já com o "OR REPLACE" adicionado. Existe alguma
> ferramenta que faça isso?
>
>
Vc pode usar a função "pg_get_functiondef" para o que vc precisa e fazer um
script para "exportar" as mesmas.

bdteste=# SELECT pg_get_functiondef('calcula'::regproc);
                      pg_get_functiondef
--------------------------------------------------------------
 CREATE OR REPLACE FUNCTION public.calcula(expressao text)   +
  RETURNS numeric                                            +
  LANGUAGE plpgsql                                           +
 AS $function$                                               +
 declare                                                     +
   resultado numeric;                                        +
 begin                                                       +
   execute 'SELECT '||expressao||'::numeric;' into resultado;+
   return resultado;                                         +
 end;                                                        +
 $function$                                                  +

(1 row)


Att,

-- 
Fabrízio de Royes Mello
Consultoria/Coaching PostgreSQL
>> Blog sobre TI: http://fabriziomello.blogspot.com
>> Perfil Linkedin: http://br.linkedin.com/in/fabriziomello
>> Twitter: http://twitter.com/fabriziomello
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a