对于给定的表,如何找到使用该表中任何字段的所有函数? 说我有学生表(studentid,studentname)
我想要一个使用来自学生的studentid和studentname的所有函数和触发器的列表。
我的问题与List stored functions that reference a table in PostgreSQL类似,但是那里给出的代码不起作用... n.nspname
在与Schema相关的条件中给出而不是表格。
答案 0 :(得分:1)
也许不是很精确,但这个查询应该有用。
SELECT routine_schema, routine_name
FROM information_schema.routines
WHERE routine_definition ~ 'student'
AND routine_definition ~ 'studentid'
AND routine_definition ~ 'studentname';
根据您编写过程的方式,您可以应用更精确的正则表达式。例如,如果您总是以这种形式编写表格和列:table.column
可以使用此表达式:
... WHERE routine_definition ~ 'student\.studentid'
AND routine_definition ~ 'student\.studentname'