Re: DDLs of a Function

Laurenz Albe <[email protected]> Tue, 17 Dec 2019 14:00:43 +0100
Newsgroups gmane.comp.db.postgresql.admin
Message-ID <[email protected]>
On Mon, 2019-12-16 at 22:00 -0700, pratmeht wrote:
> We want to drop a table and recreate it. As we all know, dropping a table
> even drops the dependent objects like views, MVs, functions. I wanted your
> help to get the DDL of the (dependent) function before we can drop the
> table. Once the dropped table is being recreated, this DDL will be helpful
> to recreate that function.
> 
> We found a way to get the DDL of the Views and MVs, but not for function! :(
> Can someone please help ?

You can use "pg_get_functiondef":

SELECT pg_get_functiondef('pg_get_functiondef'::regproc);

                      pg_get_functiondef                       
---------------------------------------------------------------
 CREATE OR REPLACE FUNCTION pg_catalog.pg_get_functiondef(oid)+
  RETURNS text                                                +
  LANGUAGE internal                                           +
  STABLE PARALLEL SAFE STRICT                                 +
 AS $function$pg_get_functiondef$function$                    +
 
(1 row)

This article contains something about view dependencies:
https://www.cybertec-postgresql.com/en/tracking-view-dependencies-in-postgresql/

Yours,
Laurenz Albe
-- 
Cybertec | https://www.cybertec-postgresql.com