lundi 6 juillet 2015

Identifiier les fonctions dans une DB PostgreSQL

Voici de petites requêtes pour PostGreSQL permettant d'identifier les fonctions déclarées dans une DB. Le petit truc à garder dans une boite à outil.

Saviez-vous que 3 caractères sont déjà très discriminatoires lors d'une recherche?
Ce SQL devient vachement pratique lorsqu'il y en beaucoup de fonction car elle permet de faire une recherche sur mot clé avec une "where" clause et un "like" :-) 

-- Lister les fonctions définies dans une DB
--   src: http://stackoverflow.com/questions/1559008/list-stored-functions-using-a-table-in-postgresql

SELECT  p.proname
FROM    pg_catalog.pg_namespace n
JOIN    pg_catalog.pg_proc p
ON      p.pronamespace = n.oid
WHERE   n.nspname = 'public';

-- Identifier sur base d'une partie du nom de la fonction
--    AND proname like '%ver%'




-- Lister les fonctions définies AVEC nom des arguments
--   Pratique lorsqu'il faut réaliser un DROP FUNCTION <name>(<args>);
--  

SELECT  proname, proargnames
FROM    pg_catalog.pg_namespace n
JOIN    pg_catalog.pg_proc p
ON      pronamespace = n.oid
WHERE   nspname = 'public';






Aucun commentaire: