something like this would probably work too

for a in `echo "SELECT p.proname
FROM pg_catalog.pg_proc p
LEFT JOIN pg_catalog.pg_namespace n ON n.oid = p.pronamespace
WHERE pg_catalog.pg_function_is_visible(p.oid)
AND n.nspname <> 'pg_catalog'
AND n.nspname <> 'information_schema'"|psql -A -t test`;
do echo "SELECT pg_get_functiondef('$a'::regproc);"|psql -A -t test
>$a.function.sql ;done

On Thu, Mar 28, 2013 at 5:29 PM, Keith Ouellette <keith.ouelle...@airgas.com
> wrote:

>  Thank you. I tried pg_extractor and it work almost perfect. I have just
> one question. We do overloading of a function name (using different
> parameters) and I think it puts all overlaoded functions in the same file
> (those with the same file name that is). Is there a way to separate them?
>
>
>
> Thanks again for everyones help.
>
>
>
>
>  ------------------------------
> *From:* Scott Mead [sco...@openscg.com]
> *Sent:* Wednesday, March 27, 2013 1:49 PM
> *To:* Raghavendra
> *Cc:* Keith Ouellette; pgsql-admin@postgresql.org
> *Subject:* Re: [ADMIN] Dump only functions
>
>  On Wed, Mar 27, 2013 at 1:43 PM, Raghavendra <
> raghavendra....@enterprisedb.com> wrote:
>
>>  On Wed, Mar 27, 2013 at 10:53 PM, Keith Ouellette <
>> keith.ouelle...@airgas.com> wrote:
>>
>>>  Is there a way to dump only functions to a directory with each
>>> function as its own file in SQL format?
>>>
>>  AFAIK, there's no direct way to dump each function to a separate file.
>> However, you can use system-defined function or system table to retrieve
>> function structure and then write them to separate file each by using bash
>> or perl scripting.
>>
>>  select prosrc from pg_proc where proname='foo';
>> or
>> select pg_get_functiondef('foo(integer)'::regprocedure::oid);
>>  or
>> Use other sources like pg_extractor tools.
>> http://www.keithf4.com/pg_extractor/
>>
>
>  +1 here.  pg_extractor is my personal favorite for this type of thing.
> It can give you all of your objects as separate files if you'd like.
>
>  --Scott
>
>
>>
>>  ---
>> Regards,
>> Raghavendra
>> EnterpriseDB Corporation
>> Blog: http://raghavt.blogspot.com/
>>
>>
>>
>>>
>>>
>>> Thanks,
>>>
>>> Keith
>>>
>>>
>>>
>>
>>
>

Reply via email to