物化视图刷新后自动调用函数?
Automatically call function after materialized view refresh?
我见过的大多数关于物化视图和自动化的问题都与定期刷新视图或在某些触发器上刷新视图有关。
可以说,我的问题正好相反。
给定一些物化视图,我想调用一些函数将一些行插入到其他一些 table 中。所以,基本上类似于“刷新后创建触发器”。
问题是,没有“刷新后”这样的触发类型。
它可以在 Postgres 中本地实现吗?
唯一的方法是使用触发 ON ddl_command_end
的 event trigger。
检查函数体中的 TG_TAG = 'REFRESH MATERIALIZED VIEW'
。
检查 pg_event_trigger_ddl_commands()
结果中的 objid
以了解刷新了哪个物化视图。
我见过的大多数关于物化视图和自动化的问题都与定期刷新视图或在某些触发器上刷新视图有关。
可以说,我的问题正好相反。 给定一些物化视图,我想调用一些函数将一些行插入到其他一些 table 中。所以,基本上类似于“刷新后创建触发器”。 问题是,没有“刷新后”这样的触发类型。
它可以在 Postgres 中本地实现吗?
唯一的方法是使用触发 ON ddl_command_end
的 event trigger。
检查函数体中的 TG_TAG = 'REFRESH MATERIALIZED VIEW'
。
检查 pg_event_trigger_ddl_commands()
结果中的 objid
以了解刷新了哪个物化视图。