我有一个只使用SQL访问的postgres数据库(我的意思是我可以使用psql
进行连接)。我需要禁用一些规则,进行维护然后再启用它们。我想保证在完成所有这些操作后,所有规则都会启用。我怎么能用SQL查询列出它们?
答案 0 :(得分:5)
这样的事情应该让你开始:
select n.nspname as rule_schema,
c.relname as rule_table,
case r.ev_type
when '1' then 'SELECT'
when '2' then 'UPDATE'
when '3' then 'INSERT'
when '4' then 'DELETE'
else 'UNKNOWN'
end as rule_event
from pg_rewrite r
join pg_class c on r.ev_class = c.oid
left join pg_namespace n on n.oid = c.relnamespace
left join pg_description d on r.oid = d.objoid