PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

Quelle est la commande pour trouver le script d'une fonction existante dans postgresql ?

Si vous utilisez psql (l'interface de ligne de commande), vous pouvez utiliser \df+ comme tobixen l'a déjà indiqué (et qui est clairement documenté dans le manuel).

Si vous avez besoin de le faire à partir d'une requête SQL, consultez le fonctions d'informations système . Vous recherchez pg_get_functiondef()

select pg_get_functiondef(oid)
from pg_proc
where proname = 'your_function';

Si vous avez affaire à des fonctions surchargées ayant un nombre différent de paramètres, vous devez inclure la signature du paramètre dans le nom :

select pg_get_functiondef('public.foo(int)'::regprocedure);
select pg_get_functiondef('public.foo(int,int)'::regprocedure);

récupérera les versions surchargées de la fonction foo (une version avec un seul paramètre int, l'autre version avec deux paramètres int).