15

在重构 PostgreSql 函数时(更具体地说:在搜索“未使用”函数时),有一个函数可用于在函数定义中搜索特定字符串会很方便。

有谁知道这是否是最好的方法(尝试“grep”搜索函数定义)还是有替代方法可用?

如何实现这一功能?

4

2 回答 2

30
SELECT 
  proname AS functionname, 
  prosrc AS source 
FROM 
  pg_proc 
WHERE 
  prosrc ~* 'your_string';

有关如何在 PostgreSQL 中使用正则表达式的详细信息,可以在手册中找到。

于 2010-12-15T10:42:55.043 回答
5

弗兰克的回答很棒。使用此增强版本额外列出有助于定位函数的架构:

SELECT
  proname AS functionname,
  prosrc AS source,
  nspname AS schema
FROM
  pg_proc
INNER JOIN pg_namespace ON (pg_proc.pronamespace = pg_namespace.oid)
WHERE
  prosrc ~* 'your_string';
于 2017-01-11T08:00:24.963 回答