Bis*_*isu 10 postgresql procedure function list
试图找出Postgre SQL上存储的函数和过程.我找到了一些使用"join"的解决方案.我正在寻找一个最佳的解决方案/命令.
小智 14
如果有一个我真的不知道的命令.我还使用pg_catalog.pg_proc和pg_catalog.pg_namespace之间的连接解决方案来列出一个模式中的所有函数.
您可以使用联接来获得所需内容.例如,此查询将为您提供更改架构上所有函数的所有者的命令:
SELECT 'ALTER FUNCTION '
|| quote_ident(n.nspname) || '.'
|| quote_ident(p.proname) || '('
|| pg_catalog.pg_get_function_identity_arguments(p.oid)
|| ') OWNER TO owner_usr;' AS command
FROM pg_catalog.pg_proc p
JOIN pg_catalog.pg_namespace n ON n.oid = p.pronamespace
WHERE n.nspname = 'your_schema';
Run Code Online (Sandbox Code Playgroud)
这个应该列出你所有用户定义的功能:
SELECT quote_ident(n.nspname) as schema , quote_ident(p.proname) as function
FROM pg_catalog.pg_proc p
JOIN pg_catalog.pg_namespace n ON n.oid = p.pronamespace
WHERE n.nspname not like 'pg%'
Run Code Online (Sandbox Code Playgroud)
希望有所帮助.